Method and apparatus for adaptive real-time signal conditioning, processing, analysis, quantification, comparison, and control

ABSTRACT

Various components of the present invention are collectively designated as Adaptive Real-Time Embodiments for Multivariate Investigation of Signals (ARTEMIS). It is a method, processes, and apparatus for measurement and analysis of variables of different type and origin. In this invention, different features of a variable can be quantified either locally as individual events, or on an arbitrary spatio-temporal scale as scalar fields in properly chosen threshold space. The method proposed herein overcomes limitations of the prior art by directly processing the data in real-time in the analog domain, identifying the events of interest so that continuous digitization and digital processing is not required, performing direct, noise-resistant measurements of salient signal characteristics, and outputting a signal proportional to these characteristics that can be digitized without the need for high-speed front-end sampling.  
     The application areas of ARTEMIS are numerous, e.g., it can be used for adaptive content-sentient real-time signal conditioning, processing, analysis, quantification, comparison, and control, and for detection, quantification, and prediction of changes in signals, and can be deployed in automatic and autonomous measurement, information, and control systems. ARTEMIS can be implemented through various physical means in continuous action machines as well as through digital means or computer calculations. Particular embodiments of the invention include various analog as well as digital devices, computer programs, and simulation tools.

[0001] This application claims the benefit of U.S. Provisional Patent Application No. 60/416,562 filed on Oct. 7, 2002, which is incorporated herein by reference in its entirety.

COPYRIGHT NOTIFICATION

[0002] Portions of this patent application contain materials that are subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.

TECHNICAL FIELD

[0003] The present invention relates to methods, processes and apparatus for real-time measuring and analysis of variables. In particular, it relates to adaptive real-time signal conditioning, processing, analysis, quantification, comparison, and control. This invention also relates to generic measurement systems and processes, that is, the proposed measuring arrangements are not specially adapted for any specific variables, or to one particular environment. This invention also relates to methods and corresponding apparatus for measuring which extend to different applications and provide results other than instantaneous values of variables. The invention further relates to post-processing analysis of measured variables and to statistical analysis.

BACKGROUND ART

[0004] Due to the rapid development of digital technology since the 1950's, the development of analog devices has been essentially squeezed out to the periphery of data acquisition equipment only. It could be argued that the conversion to digital technology is justified by the flexibility, universality, and low cost of modern integrated circuits. However, it usually comes at the price of high complexity of both hardware and software implementations. The added complexity of digital devices stems from the fact that all operations must be reduced to the elemental manipulation of binary quantities using primitive logic gates. Therefore, even such basic operations as integration and differentiation of functions require a very large number of such gates and/or sequential processing of discrete numbers representing the function sampled at many points. The necessity to perform a very large number of elemental operations limits the ability of digital systems to operate in real time and often leads to substantial dead time in the instruments. On the other hand, the same operations can be performed instantly in an analog device by passing the signal representing the function through a simple RC circuit. Further, all digital operations require external power input, while many operations in analog devices can be performed by passive components. Thus analog devices usually consume much less energy, and are more suitable for operation in autonomous conditions, such as mobile communication, space missions, prosthetic devices, etc.

[0005] It is widely recognized (see, for example, Paul and Hüper (1993)) that the main obstacle to robust and efficient analog systems often lies in the lack of appropriate analog definitions and the absence of differential equations corresponding to known digital operations. When proper definitions and differential equations are available, analog devices routinely outperform corresponding digital systems, especially in nonlinear signal processing (Paul and Hüper, 1993). However, there are many signal processing tasks for which digital algorithms are well known, but corresponding analog operations are hard to reproduce. One example, which is widely recognized to fall within this category, is related to the use of signal processing techniques based on order statistics¹. Order statistic (or rank) filters are gaining wide recognition for their ability to provide robust estimates of signal properties and are becoming the filters of choice for applications ranging from epileptic seizure detection (Osorio et al., 1998) to image processing (Kim and Yaroslavsky, 1986). However, since such filters work by sorting, or ordering, a set of measurements their implementation has been constrained to the digital domain. As pointed out by some authors (Paul and Hüper, 1993, for example), the major problem in analog rank processing is the lack of an appropriate differential equation for ‘analog sorting’. There have been several attempts to implement such sorting and to build continuous-time rank filters without using delay lines and/or clock circuits. Examples of these efforts include optical rank filters (Ochoa et al., 1987), analog sorting networks (Paul and Hüper, 1993; Opris, 1996), and analog rank selectors based on minimization of a non-linear objective function (Urahama and Nagao, 1995). However, the term ‘analog’ is often perceived as only ‘continuous-time’, and thus these efforts fall short of considering the threshold continuity, which is necessary for a truly analog representation of differential sorting operators. Even though Ferreira (2000, 2001) extensively discusses threshold distributions, these distributions are only piecewise-continuous and thus do not allow straightforward introduction of differential operations with respect to threshold.

[0006] Nevertheless, fuelled by the need for robust filters that can operate in real time and on a low energy budget, analog implementation of traditionally digital operations has recently gained in popularity aided by the rapid progress in analog Very Large Scale Integration (VLSI) technology (Mead, 1989; Murthy and Swamy, 1992; Kinget and Steyaert, 1997; Lee and Jen, 1993). However, current efforts to implement digital signal processing methods in analog devices still employ an essentially digital philosophy. That is, a continuous signal is passed through a delay line which samples the signal at discrete time intervals. Then the individual samples are processed by a cascade of analog devices that mimic elemental digital operations (Vlassis et al., 2000). Such an approach fails to exploit the main strength of analog processing, which is the ability to perform complex operations in a single step without employing the ‘divide and conquer’ paradigm of the digital approach.

[0007] Perhaps the most common digital waveform device is the analog-to-digital converter (ADC). Among the salient characteristics of ADCs are their sampling frequency, measurement resolution, power dissipation, and system complexity. Sampling frequency is typically dictated by the signal of interest and/or the requirements of the application. As the frequency content of the signal of interest increases and the sampling frequency increases, resolution decreases both in terms of the absolute number of bits available in an ADC and in terms of the effective number of bits (ENOB), or accuracy, of the measurement. Power needs typically increase with increasing sampling frequency. The system complexity is increased if continuous monitoring of an input signal is required (real-time operation). As an example, high-end oscilloscopes can capture fast transient events, but are limited by record length (the number of samples that can be acquired) and dead time (the time required to process, store, or display the samples and then reset for more data acquisition). These limitations affect any data acquisition system in that, as the sampling frequency increases, resources will ultimately be limited at some point in the processing chain. In addition, the higher the acquisition speed, the more negative effects such as clock crosstalk, jitter, and synchronization issues combine to reduce system performance.

[0008] It is highly desirable to extract signal characteristics or preprocess data prior to digitization so that the requirements on the ADCs are reduced and higher quality data can be obtained. In the past, one common technique was to use an analog memory to sample a fast signal and then the analog memory would be clocked out at a low speed and digitized with a moderately high resolution ADC. While this technique works, it suffers from significant degradation due to clock feedthrough, non-linear effects of the analog memories chosen, and limited record length. Another technique used is to multiplex a high-speed signal to a number of lower speed but higher resolution ADCs using an interleaved clock. Again, the technique works but never realizes the best performance of a single channel due to the high clock noise and inevitable differences in processing channels.

[0009] The introduction of the Analysis of VAriables Through Analog Representation (AVATAR) methodology (see Nikitin and Davidchack (2003a) and U.S. patent application Ser. No. 09/921,524, which are incorporated herein by reference in their entirety) is aimed to address many aspects of modern data acquisition and signal processing tasks by offering solutions that combine the benefits of both digital and analog technology, without the drawbacks of high cost, high complexity, high power consumption, and low reliability. The AVATAR methodology is based on the development of a new mathematical formalism, which takes into consideration the limited precision and inertial properties of real physical measurement systems. Using this formalism, many problems of signal analysis can be expressed in a content-sentient form suitable for analog implementation. Specific devices for a wide variety of signal processing tasks can be built from a few universal processing units. Thus, unlike traditional analog solutions, AVATAR offers a highly modular approach to system design. Most practical applications of AVATAR, however, are far from obvious, and their development requires technical solutions unavailable in the prior art. For example, AVATAR introduces the definitions of analog filters and selectors. Nonetheless, the practical implementations of these filters offered by AVATAR are often unstable and suffer from either lack of accuracy or lack of convergence speed, and thus are unsuitable for real-time processing of nonstationary signals. Another limitation of AVATAR lies in the definition of the threshold filter. Namely, a threshold filter in AVATAR depends only on the difference between the displacement and the input variables, and is expressed as a scalar function of only the displacement variable, which limits the scope of applicability of AVATAR. As another example, the analog counting in AVATAR is introduced through modulated density, and thus the instantaneous counting rate is expressed as a product of a rectified time derivative of the signal and the output of a probe. Even though this definition theoretically allows counting without dead time effect, its practical implementations are cumbersome and inefficient.

DISCLOSURE OF INVENTION BRIEF SUMMARY OF THE INVENTION

[0010] The present invention, collectively designated as Adaptive Real-Time Embodiments for Multivariate Investigation of Signals (ARTEMIS), overcomes the shortcomings of the prior art by directly processing the data in real-time in the analog domain, identifying the events of interest so that continuous digitization and digital processing is not required, performing direct, noise-resistant measurements of the salient signal characteristics, and outputting a signal proportional to these characteristics that can be digitized without the need for high-speed front-end sampling.

[0011] In the face of the overwhelming popularity of digital technology, simple analog designs are often overlooked. Yet they often provide much cheaper, faster, and more efficient solutions in applications ranging from mobile communication and medical instrumentation to counting detectors for high-energy physics and space missions. The current invention, collectively designated as Adaptive Real-Time Embodiments for Multivariate Investigation of Signals (ARTEMIS), explores a new mathematical formalism for conducting adaptive content-sentient real-time signal processing, analysis, quantification, comparison, and control, and for detection, quantification, and prediction of changes in signals. The method proposed herein overcomes the limitations of the prior art by directly processing the data in real-time in the analog domain, identifying the events of interest so that continuous digitization and digital processing is not required, performing a direct measurement of the salient signal characteristics such as energy and arrival rate, and outputting a signal proportional to these characteristics that can be digitized without the need for high-speed front-end sampling. In addition, the analog systems can operate without clocks, which reduces the noise introduced into the data.

[0012] A simplified diagram illustrating multimodal analog real-time signal processing is shown in FIG. 1. The process comprises the step of Threshold Domain Filtering in combination with at least one of the following steps: (a) Multimodal Pulse Shaping, (b) Analog Rank Filtering, and (c) Analog Counting.

[0013] Threshold Domain Filtering is used for separation of the features of interest in a signal from the rest of the signal. In terms of a threshold domain, a ‘feature of interest’ is either a point inside of the domain, or a point on the boundary of the domain. A typical Threshold Domain Filter can be composed of (asynchronous) comparators and switches, where the comparators operate on the differences between the components of the incoming variable(s) and the corresponding components of the control variable(s). For example, for the domain defined as a product of two ideal comparators represented by the Heaviside unit step function θ(χ), D=θ[χ(t)−D]θ[{dot over (χ)}(t)] (with two control levels, D and zero), a point inside (that is, D=1) corresponds to a positive-slope signal of the magnitude greater than D, and the stationary points of χ(t) above the threshold D can be associated with the points on the boundary of this domain.

[0014] Multimodal Pulse Shaping can be used for embedding the incoming signal into a threshold space and thus enabling extraction of the features of interest by the Threshold Domain Filtering. A typical Multimodal Pulse Shaper transforms at least one component of the incoming signal into at least two components such that one of these two components is a (partial) derivative of the other. For example, for identification of the signal features associated with the stationary points of a signal χ(t), the Multimodal Pulse Shaping is used to output both the signal χ(t) and its time derivative χ(t).

[0015] Analog Rank Filtering can be used for establishing and maintaining the analog control levels of the Threshold Domain Filtering. It ensures the adaptivity of the Threshold Domain Filtering to changes in the measurement conditions, and thus the optimal separation of the features of interest from the rest of the signal. For example, the threshold level D in the domain D=θ[χ(t)−D]θ[{dot over (χ)}(t)] can be established by means of Analog Rank Filtering to separate the stationary points of interest from those caused by noise. Note that the Analog Rank Filtering outputs the control levels indicative of the salient properties of the input signal(s), and thus can be used as a stand-alone embodiment of ARTEMIS for adaptive real-time signal conditioning, processing, analysis, quantification, comparison, and control, and for detection, quantification, and prediction of changes in signals.

[0016] Analog Counting can be used for identification and quantification of the crossings of the threshold domain boundaries, and its output(s) can be either the instantaneous rate(s) of these crossings, or the rate(s) in moving window of time. A typical Analog Counter consists of a time-differentiator followed by a rectifier, and an optional time-integrator.

[0017] Further scope of the applicability of the invention will be clarified through the detailed description given hereinafter. It should be understood, however, that the specific examples, while indicating preferred embodiments of the invention, are presented for illustration only. Various changes and modifications within the spirit and scope of the invention should become apparent to those skilled in the art from this detailed description. Furthermore, all the mathematical expressions and the examples of hardware implementations are used only as a descriptive language to convey the inventive ideas clearly, and are not limitative of the claimed invention.

BRIEF DESCRIPTION OF FIGURES

[0018]FIG. 1. Simplified diagram of a multimodal analog system for real-time signal processing.

[0019]FIG. 2. Representative step (a) and impulse (b) responses of a continuous comparator.

[0020]FIG. 3. Defining output D_(q)(t) of a rank filter as a level curve of the distribution function Φ(D, t).

[0021]FIG. 4. Amplitude and counting densities computed for the fragment of a signal shown at the top of the figure.

[0022]FIG. 5. Comparison of the rates measured with the boxcar (thin solid line) and the ‘triple-integrator’ test function (n=3 in equation (14), thick line) with τ=T/6. The respective test functions are shown in the upper left corner of the figure.

[0023]FIG. 6. Illustration of bimodal pulse shaping used for the amplitude and timing measurements of a short-duration event.

[0024]FIG. 7. A simplified principal schematic of a signal processing system for a two-detector particle telescope.

[0025]FIG. 8. Example of analog measurement of instantaneous rate of signal's extrema.

[0026]FIG. 9. Example of analog counting of coincident maxima.

[0027]FIG. 10. Coincident counting in a time-of-flight window: (a). ‘Ideal’ instrument; (b) ‘Realistic’ instrument.

[0028]FIG. 11. Principle schematic of implementation of an adaptive real-time rank filter given by equation (24).

[0029]FIG. 12. Simplified diagram of an Adaptive Analog Rank Filter (AARF).

[0030]FIG. 13. Principle schematic of a 3-comparator implementation of AARF.

[0031]FIG. 14. Principle schematic of a delayed comparator.

[0032]FIG. 15. Principle schematic of an averaging comparator.

[0033]FIG. 16. Comparison of the performance of the analog rank filter given by equation (24) to that of the ‘exact’ quantile filter in a boxcar moving window of width T.

[0034]FIG. 17. Example of using an internal reference (baseline) for separating signal from noise.

[0035]FIG. 18. Principle schematic of establishing baseline by means of quartile (trimean) filter.

[0036]FIG. 19. Principle schematic of implementation of an adaptive real-time rank selector given by equation (28).

[0037]FIG. 20. Simplified diagram of an Adaptive Analog Rank Selector (AARS).

[0038]FIG. 21. Removing static and dynamic impulse noise from a monochrome image by AARSs.

[0039]FIG. 22. Comparison of quartile outputs (q=¼, ½, and ¾) of ARF and EARL for amplitudes and counts.

[0040]FIG. 23. Simplified principle schematic of a Bimodal Analog Sensor Interface System (BASIS).

[0041]FIG. 24. Simplified principle schematic of an Integrated Output Module of BASIS.

[0042]FIG. 25. Simulated example of the performance of BASIS used with a PMT.

[0043]FIG. 26. Modification of BASIS used for detection of onsets/offsets of light pulses.

[0044]FIG. 27. Principle schematic of a monoenergetic Poisson pulse generator.

[0045]FIG. 28 Simulated performance of a monoenergetic Poisson pulse generator.

Terms and Definitions with Illustrative Examples

[0046] For convenience, the essential terms used in the subsequent detailed description of the invention are provided below, along with their definitions adopted for the purpose of this disclosure. Some examples clarifying and illustrating the meaning of the definitions are also provided. Note that the sections and equations in this part are numbered separately from the rest of the disclosure. Additional explanatory information on relevant terms and definitions can be found in U.S. patent application Ser. No. 09/921,524 and U.S. Provisional Patent Application No. 60/416,562, which are incorporated herein by reference in their entirety. Some other terms and their definitions which might appear in this disclosure will be provided in the detailed description of the invention.

D-1 Continuous Comparators and Probes

[0047] Consider a simple measurement process whereby a signal χ(t) is compared to a threshold value D. The ideal measuring device would return ‘0’ or ‘1’ depending on whether χ(t) is larger or smaller than D. The output of such a device is represented by the Heaviside unit step function θ[D−χ(t)], which is discontinuous at zero. However, the finite precision of real measurements inevitably introduces uncertainty in the output whenever χ(t)≈D. To describe this property of a real measuring device, we represent its output by a continuous function F_(ΔD)[D−χ(t)], where the width parameter ΔD characterizes the threshold interval over which the function changes from ‘0’ to ‘1’ and, therefore, reflects the measurement precision level. We call F_(ΔD)(D) the threshold step response of a continuous comparator. Because of the continuity of this function, its derivative f_(ΔD)(D)=dF_(ΔD)/dD exists everywhere, and we call it the comparator's threshold impulse response, or a probe (Nikitin et al., 2003; Nikitin and Davidchack, 2003a,b). This threshold continuity of the output of a comparator is the key to a truly analog representation of such a measurement. Examples of step and impulse responses of a continuous comparator are shown in FIG. 2. We further assume, for simplicity, that the probe is a unimodal even function, that is, f_(ΔD)(D) has only a single maximum and f_(ΔD)(D)=f_(ΔD)(−D).

[0048] In practice, many different circuits can serve as comparators, since any continuous monotonic function with constant unequal horizontal asymptotes will produce the desired response under appropriate scaling and reflection. It may be simpler to implement a comparator described by an odd function {tilde over (F)}_(ΔD) which relates to the response F_(ΔD) as

{tilde over (F)} _(ΔD) =A(2F _(ΔD)−1),  (D-1)

[0049] where A is an arbitrary (nonzero) constant. For example, the voltage-current characteristic of a subthreshold transconductance amplifier (Mead, 1989; Urahama and Nagao, 1995) can be described by the hyperbolic tangent function, {tilde over (F)}_(ΔD)=A tanh(D/ΔD), and thus such an amplifier can serve as a continuous comparator. For specificity, this response function is used in the numerical examples of this disclosure. A practical implementation of the probe f_(ΔD) corresponding to the comparator F_(ΔD) can be conveniently accomplished as a finite difference $\begin{matrix} \begin{matrix} {{f_{\Delta \quad D}(D)} \approx \frac{\delta \quad {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}(D)}}{4A\quad \delta \quad D}} \\ {{= {\frac{1}{4\quad A\quad \delta \quad D}\left\lbrack {{{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left( {D + {\delta \quad D}} \right)} - {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left( {D - {\delta \quad D}} \right)}} \right\rbrack}},} \end{matrix} & \left( {D\text{-}2} \right) \end{matrix}$

[0050] where δD is a relatively small fraction of ΔD.

[0051] Note that the terms ‘comparator’ and ‘discriminator’ might be used synonymously in this disclosure.

D-2 Analog Rank Filters (ARFS)

[0052] Consider the measuring process in which the difference between the threshold variable D and the scalar signal χ(t) is passed through a comparator F_(ΔD), followed by a linear time averaging filter with a continuous impulse response w(t). The output of this system can be written as

Φ(D,t)=w(t)*F _(ΔD) [D−χ(t)],  (D-3)

[0053] where the asterisk denotes convolution. The physical interpretation of the function Φ(D,t) is the (time dependent) cumulative distribution function of the signal χ(t) in the moving time window w(t) (Nikitin and Davidchack, 2003b). In the limit of high resolution (small ΔD), equation (D-3) describes the ‘ideal’ distribution (Ferreira, 2001). Notice that Φ(D,t) is viewed as a function of two variables, threshold D and time t, and is continuous in both variables.

[0054] The output of a quantile filter of order q in the moving time window w(t) is then given by the function D_(q)(t) defined implicitly as

Φ[D _(q)(t),t]=q, 0<q<1.  (D-4)

[0055] Viewing the function Φ(D,t) as a surface in the three-dimensional space (t, D, Φ), we immediately have a geometric interpretation of D_(q)(t) as that of a level (or contour) curve obtained from the intersection of the surface Φ=Φ(D,t) with the plane Φ=q, as shown in FIG. 3. Based on this geometric interpretation, one can develop various explicit as well as feedback representations for analog rank filters, including such generalizations as L filters and α-trimmed mean filters (Nikitin and Davidchack, 2003b).

[0056] Note that the terms analog ‘rank’, ‘quantile’, ‘percentile’, and ‘order statistic’ filters are often synonymous and might be used alternatively in this disclosure.

D-2.1 Quantile Filters for Modulated Densities

[0057] Let us point out (see Nikitin and Davidchack, 2003a,b, for example) that various threshold densities can be viewed as different appearances of a general modulated threshold density (MTD) $\begin{matrix} {{{\varphi \left( {D,t} \right)} = \frac{{w(t)}*\left\{ {{K(t)}\quad {f_{\Delta \quad D}\left\lbrack {D - {x(t)}} \right\rbrack}} \right\}}{{w(t)}*{K(t)}}},} & \left( {D\text{-}5} \right) \end{matrix}$

[0058] where K(t) is a unipolar modulating signal. Various choices of the modulating signal allow us to introduce different types of threshold densities and impose different conditions on these densities. For example, the simple amplitude density is given by the choice K(t)=const, and setting K(t) equal to |{dot over (χ)}(t)| leads to the counting density. The significance of the definition of the time dependent counting (threshold crossing) density arises from the fact that it characterizes the rate of change in the analyzed signal, which is one of the most important characteristics of a dynamic system. Notice that the amplitude density is proportional to the time the signal spends in a vicinity of a certain threshold, while the counting density is proportional to the number of ‘visits’ to this vicinity by the signal. FIG. 4 shows both the amplitude and counting densities computed for the fragment of a signal shown in the top panel of the figure. Note that the amplitude density has a sharp peak at every signal extremum, while the counting density has a much more regular shape.

[0059] An expression for the quantile filter for a modulated density can be written as $\begin{matrix} {{\frac{D_{q}}{t} = \frac{{w_{T}(t)}*\left\{ {{K(t)}\quad \left( {q - {\mathcal{F}_{\Delta \quad D}\left\lbrack {D_{q} - {x(t)}} \right\rbrack}} \right)} \right\}}{\tau \quad {w(t)}*\left\{ {{K(t)}\quad {f_{\Delta \quad D}\left\lbrack {D_{q} - {x(t)}} \right\rbrack}} \right\}}},} & \left( {D\text{-}6} \right) \end{matrix}$

[0060] and the physical interpretation of such a filter depends on the nature of the modulating signal. For example, a median filter in a rectangular moving window for K(t)=|{umlaut over (χ)}(t)|f_(ΔD{dot over (χ)})[{dot over (χ)}(t)] yields D_(1/2)(t) such that half of the extrema of the signal χ(t) in the window are below this threshold. SELECTED ACRONYMS AND WHERE THEY FIRST APPEAR AARF Adaptive Analog Rank Filter, page 27 AARS Adaptive Analog Rank Selector, page 35 ARTEMIS Adaptive Real-Time Embodiments for Multivariate Investigation of Signals, page 6 AVATAR Analysis of Variables Through Analog Representation, page 4 BASIS Bimodal Analog Sensor Interface System, page 40 EARL Explicit Analog Rank Locator, page 37 MTD Modulated Threshold Density, page 13 SPART Single Point Analog Rank Tracker, page 33

[0061] SELECTED NOTATIONS AND WHERE THEY FIRST APPEAR θ(x) Heaviside unit step function, page 7 F_(ΔD), {tilde over (F)}_(ΔD) continuous comparator(discriminator), equation(D-1) on page 12 D_(q)(t), D_(q)(t; T) output of quantile filter of order q, pages 13 and 41 D(D, x) threshold domain function, equation(1) on page 17 |x|_(±) positive/negative component of x, equation(7) on page 19 δ(x) Dirac delta function, equation(8) on page 19 R(D, t), R(t) instantaneous counting rate, page 19 and equation(8) on page 19 R(D, t), R(t) counting rate in moving window of time, page 19 and equation(17) on page 24 {tilde over (F)}_(ΔD) ^(del) delayed comparator, page 30 {tilde over (F)}_(ΔD) ^(ave) averaging comparator, equation(27) on page 31

DETAILED DESCRIPTION OF THE INVENTION

[0062] The Detailed Description of the Invention is organized as follows.

[0063] Section 1 (p. 17) provides the definition of the threshold domain function and Threshold Domain Filtering, and explains its usage for feature extraction.

[0064] Section 2 (p. 19) deals with quantification of crossings of threshold domain boundaries by means of Analog Counting.

[0065] Section 3 (p. 22) introduces Multimodal Pulse Shaping as a way of embedding an incoming signal into a threshold space and thus enabling extraction of the features of interest by the Threshold Domain Filtering. Subsection 3.1 describes Analog Bimodal Coincidence (ABC) counting systems as an example of a real-time signal processing utilizing Threshold Domain Filtering in combination with Analog Counting and Multimodal Pulse Shaping.

[0066] Section 4 (p. 26) presents various embodiments of Analog Rank Filters which can be used in ARTEMIS in order to reconcile the conflicting requirements of the robustness and adaptability of the control levels of the Threshold Domain Filtering. Subsection 4.1 describes the Adaptive Analog Rank Filters (AARFs) and Adaptive Analog Rank Selectors (AARSs), while §4.2 introduces the Explicit Analog Rank Locators (EARLs). Subsection 4.3 describes the Bimodal Analog Sensor Interface System (BASIS) as an example of an analog signal processing module operatable as a combination of Threshold Domain Filtering, Analog Counting, and Analog Rank Filtering.

[0067] As an additional illustration of ARTEMIS, §5 (p. 46) describes a technique and a circuit for generation of monoenergetic Poissonian pulse trains with adjustable rate and amplitude through a combination of Threshold Domain Filtering and Analog Counting.

1 Threshold Domain Filtering

[0068] Threshold Domain Filtering is used for separation of the features of interest in a signal from the rest of the signal. In terms of a threshold domain, a ‘feature of interest’ is either a point inside of the domain, or a point on the boundary of the domain. In an electrical apparatus, e.g., a typical Threshold Domain Filter can be composed of (asynchronous) comparators and switches, where the comparators operate on the differences between the components of the incoming variable(s) and the corresponding components of the control variable(s). For example, for the domain defined as a product of two ideal comparators represented by the Heaviside unit step function θ(χ), D=θ[χ(t)−D]θ[{dot over (χ)}(t)] (with two control levels, D and zero), a point inside (that is, D=1) corresponds to a positive-slope signal of the magnitude greater than D, and the stationary points of χ(t) above the threshold D can be associated with the points on the boundary of this domain. More generally, as used in the present invention, a Threshold Domain Filter is defined by its mathematical properties regardless of their physical implementation.

[0069] Defining threshold domain Let us assume that a continuous signal y=y(a,t) depends on some spatial coordinates a and time t. Thus, in a vicinity of (a,t), this signal can be characterized by its value y(a,t) at this point along with its partial derivatives ∂y(a,t)/∂α_(i) and ∂y(a,t)/∂t at this point. These values (of the signal and its derivatives) can be viewed as coordinates of a point x=x(a,t) in a threshold space, where the vector x consists of the signal y and its various partial derivatives. A particular feature of interest can thus be defined as a certain region in the threshold space as follows.

[0070] Let us describe an ‘ideal’ threshold domain by a (two-level) function D(D,x) such that $\begin{matrix} \left\{ {\begin{matrix} {{\left( {D,x} \right)} = q_{1}} & {{if}\quad x\quad {is}\quad {inside}\quad {domain}} \\ {{\left( {D,x} \right)} = q_{2}} & {otherwise} \end{matrix},} \right. & (1) \end{matrix}$

[0071] where D is a vector of the control levels of the threshold filter. Without loss of generality, we can set q₁=1 and q₂=0. For example, in a physical space, an ideal cuboid with the edge lengths a, b, and c, centered at (χ₀, y₀, z₀), can be represented by $\begin{matrix} \begin{matrix} {{\left( {x,y,z} \right)} = {{\theta \left\lbrack {1 - {4\left( \frac{x - x_{0}}{a} \right)^{2}}} \right\rbrack}\quad {\theta \left\lbrack {1 - {4\left( \frac{y - y_{0}}{b} \right)^{2}}} \right\rbrack}}} \\ {\quad {{\theta \left\lbrack {1 - {4\left( \frac{z - z_{0}}{c} \right)^{2}}} \right\rbrack},}} \end{matrix} & (2) \end{matrix}$

[0072] where we have assumed constant control levels and thus D is a function of χ, y, and z only. Note that for a ‘real’, or ‘fuzzy’, domain the transition from q₂ to q₁ happens monotonically over some finite interval (layer) of a characteristic thickness Δρ. The transition to a ‘real’ threshold domain can be accomplished, for example, by replacing the ideal comparators given be the Heaviside step functions with the ‘real’ comparators, θ→F_(ΔD).

[0073] Note that an arbitrary threshold domain can be represented by a combination (e.g., polynomial) of several threshold domains. For example, the cuboid given by equation (2) can be viewed as a product of six domains with plane boundaries, or as a product (intersection) of two domains given by the rectangular cylinders $\begin{matrix} {{_{xy}\left( {x,y} \right)} = {{\theta \left\lbrack {1 - {4\left( \frac{x - x_{0}}{a} \right)^{2}}} \right\rbrack}\quad {\theta \left\lbrack {1 - {4\left( \frac{y - y_{0}}{b} \right)^{2}}} \right\rbrack}}} & (3) \\ {and} & \quad \\ {{{_{yz}\left( {y,z} \right)} = {{\theta \left\lbrack {1 - {4\left( \frac{y - y_{0}}{b} \right)^{2}}} \right\rbrack}\quad {\theta \left\lbrack {1 - {4\left( \frac{z - z_{0}}{c} \right)^{2}}} \right\rbrack}}},} & (4) \\ {{\left( {x,y,z} \right)} = {{_{xy}\left( {x,y} \right)}\quad {{_{yz}\left( {y,z} \right)}.}}} & \quad \end{matrix}$

[0074] Features of a signal In terms of a threshold domain, a ‘feature’ of a signal is either a point inside of the domain, or a point on the boundary of the domain. For example, for the domain D=θ[χ(t)−D]θ[{dot over (χ)}(t)] (with two control levels, D and zero), a point inside (that is, D=1) corresponds to a positive-slope signal of the magnitude greater than D, and a point on the boundary of this domain is a stationary point of χ(t) above the threshold D.

[0075] One should notice that only a small fraction of the signal's trajectory might fall inside of the threshold domain, and thus the duration of the feature might be only a small fraction of the total duration of the signal, especially if a feature is defined as a point on the domain's boundary. Therefore, it is impractical to continuously digitize the signal in order to extract the desired short-duration features. To resolve this, ARTEMIS utilizes an analog technique for extraction and quantification of the salient signal features.

2 Analog Counting

[0076] In its simplest form, analog counting consists of three steps: (1) time-differentiation, (2) rectification, and (3) integration. The result of step 2 (rectification) is the instantaneous count rate R(D,t), and step 3 (integration) outputs the count rate R(D,t) in a moving window of time w(t), R(D, t)=w(t)*R(D,t).

[0077] Counting crossings of threshold domain boundaries The number of crossings of the boundaries of a domain D by a point following the trajectory x(t) during the time interval [0, T] can be written as $\begin{matrix} {N = {\int_{0}^{T}{{t}\quad {{\frac{}{t}{\left\lbrack {D,{x(t)}} \right\rbrack}}}}}} & (5) \end{matrix}$

[0078] for the total number of crossings, or $\begin{matrix} {N_{\pm} = {\int_{0}^{T}{{t}\quad {{\frac{}{t}{\left\lbrack {D,{x(t)}} \right\rbrack}}}_{\pm}}}} & (6) \end{matrix}$

[0079] for the number of entries (+) or exits (−). In equation (6), |χ|_(±) denotes positive/negative component of χ, $\begin{matrix} {{x}_{\pm} = {\frac{1}{2}{\left( {{x} \pm x} \right).}}} & (7) \end{matrix}$

[0080] Instantaneous count rates Note that the integrands in equations (5) and (6) represent the instantaneous rates of crossings of the domain boundaries, $\begin{matrix} {{{(t)} = {\sum\limits_{i}{\delta \left( {t - t_{i}} \right)}}},} & (8) \end{matrix}$

[0081] where δ(t) is the Dirac delta function, and t_(i) are the instances of the crossings. It should be easy to see that a number of other useful characteristics of the behavior of the signal inside the domain can be obtained based on the domain definition given by equation (1).

[0082] Consider, for example, a threshold domain D in a physical space given by a product (intersection) of two fields of view (e.g., solid angles) of two lidars² or cameras. When an object following the trajectory x(t) is in a field of view, the signal is ‘1’. Otherwise, it is ‘0’. Then the product of the signals from both lidars (cameras) is given by D[D,x(t)], and the counting of the crossings of the domain boundaries by the object can be performed by an apparatus implementing equations (5) or (6). The following characteristics of the object's motion though the domain are also useful and easily obtained: The time spent inside the domain, $\begin{matrix} {{t = {\int_{0}^{T}{{t}\quad {\left\lbrack {D,{x(t)}} \right\rbrack}}}},} & (9) \end{matrix}$

[0083] the distance traveled inside the domain, $\begin{matrix} {{s = {\int_{0}^{T}{{t}\quad {{\overset{.}{x}(t)}}\quad {\left\lbrack {D,{x(t)}} \right\rbrack}}}},} & (10) \end{matrix}$

[0084] and the average speed inside the domain, $\begin{matrix} {\overset{\_}{v} = {\frac{s}{t} = {\frac{\int_{0}^{T}{{t}\quad {{\overset{.}{x}(t)}}\quad {\left\lbrack {D,{x(t)}} \right\rbrack}}}{\int_{0}^{T}{{t}\quad {\left\lbrack {x(t)} \right\rbrack}}}.}}} & (11) \end{matrix}$

[0085] When using the ‘real’ comparators in a threshold filter and ‘real’ differentiators in an analog counter, the main property of the ‘real’ instantaneous rate R(t) is $\begin{matrix} {{{\lim\limits_{{\Delta \quad D}\rightarrow 0}{\lim\limits_{{\delta \quad t}->0}{(t)}}} = {\sum\limits_{i}{\delta \left( {t - t_{i}} \right)}}},} & (12) \end{matrix}$

[0086] where ΔD and δt are the width and the delay parameters of the comparators and differentiators, respectively. The property given by equation (12) determines the main uses of the instantaneous rate. For example, multiplication of the latter by a signal χ(t) amounts to sampling this signal at the times of occurrence of the events t_(i). Other temporal characteristics of the events can be constructed by time averaging various products of the signal with the instantaneous rate.

[0087] Count rate in a moving window of time Count rate in a moving window of time w_(T)(t) is obtained through the integration of the instantaneous rate by an integrator with an impulse response w_(T)(t), namely as

R(D,t)=w_(T)(t)*R(D,t).  (13)

[0088] Although there is effectively no difference between averaging window functions which rise from zero to a peak and then fall again, boxcar averaging is deeply engraved in modern engineering, partially due to the ease of interpretation and numerical computations. Thus one of the requirements for counting with a non-boxcar window is that the results of such measurements are comparable with boxcar counting. As an example, let us consider averaging of the instantaneous rates by a sequence of n RC-integrators. For simplicity, let us assume that these integrators have identical time constants τ=RC, and thus their combined impulse response is $\begin{matrix} {{w_{n}(t)} = {\frac{t^{n - 1}}{{\left( {n - 1} \right)!}\quad \tau^{n}}\quad ^{{- t}/\tau}\quad {{\theta (t)}.}}} & (14) \end{matrix}$

[0089] Comparability with a boxcar function of the width T can be achieved by equating the first two moments of the respective weighting functions. Thus a sequence of n RC-integrators with identical time constants $\tau = {\frac{1}{2}{T/\sqrt{3n}}}$

[0090] will provide us with rate measurements corresponding to the time averaging with a rectangular moving window of width T.³

[0091]FIG. 5 compares the moving window rates measured with the boxcar (thin solid line) and the ‘triple-integrator’ test function (n=3 in equation (14), thick line) with τ=T/6. The respective test functions are shown in the upper left corner of the figure. The gray band in the figure outlines the error interval in the rate measurements as the square root of the total number of counts in the time interval T per this interval.

[0092] One of the obvious shortcomings of boxcar averaging is that it does not allow meaningful differentiation of counting rates, while knowledge of time derivatives of the event occurrence rate is important for all physical models where such rate is a time-dependent parameter. Indeed, the time derivative of the rate measured with a boxcar function of width T is simply T⁻¹ times the difference between the ‘original’ instantaneous pulse train and this pulse train delayed by T, and such representation of the rate derivative hardly provides physical insights. On the other hand, the time derivative of the ‘cascaded integrators’ weighting function w_(n) given by equation (14) is the bipolar pulse {dot over (w)}_(n)=τ⁻¹(w_(n−1)−w_(n)), and thus the time derivative of the rate evaluated with w_(n)(t) is a measure of the ‘disbalance’ of the rates within the moving window (positive for a ‘front-loaded’ sample, and negative otherwise).

3 Multimodal Pulse Shaping

[0093] In order to focus upon characteristics of interest, feature definition may require knowledge of the (partial) derivatives of the signal. For example, in order to count the extrema in a signal χ(t), one needs to have access to the time derivative of the signal, {dot over (χ)}(t). A typical Multimodal Pulse Shaper in the present invention transforms at least one component of the incoming signal into at least two components such that one of these two components is a (partial) derivative of the other, and thus Multimodal Pulse Shaping can be used for embedding the incoming signal into a threshold space and enabling extraction of the features of interest by the Threshold Domain Filtering.

[0094] Note, however, that differentiation performed by any physical differentiator is not accurate. For example, a time derivative of f(t) obtained by an RC differentiator is proportional to [e^(−t/τ)θ(t)]*{dot over (f)}(t), where τ=RC, not to {dot over (f)}(t). Thus Multimodal Pulse Shaping does not attempt to straightforwardly differentiate the incoming signal. Instead, it processes an incoming signal in parallel channels to obtain the necessary relations between the components of the output signal. For example, if x(a, t) is a result of shaping the signal y(a, t) by the first channel of a pulse shaper with the impulse response f (a, t),

x(a,t)=f(a,t)*y(a,t),  (15)

[0095] then the derivatives of x can be obtained as $\begin{matrix} {\begin{matrix} {{\overset{.}{x}\left( {a,t} \right)} = {\overset{.}{f}*{y\left( {a,t} \right)}}} & {and} & {{\frac{\partial}{\partial a_{i}}{x\left( {a,t} \right)}} = \frac{\partial f}{\partial a_{i}}} \end{matrix}*{{y\left( {a,t} \right)}.}} & (16) \end{matrix}$

[0096] Thus Multimodal Pulse Shaping will be achieved if the impulse responses of various channels in the pulse shaper relate as the respective derivatives of the impulse response of the first channel.

[0097]FIG. 6 shows an example of bimodal pulse shaping which can be used for both the amplitude and timing measurements of a short-duration event. An event of magnitude E_(i) and arrival time t_(i) is passed through an RC pulse shaping network, producing a continuous signal χ(t). The event can be fully characterized, e.g., by the first extremum of χ(t), since the height of the extremum is proportional to E_(i), and its position in time is delayed by a constant with respect to t_(i). By replacing an RC integrator in the shaping network by an RC differentiator with the same time constant, one can obtain an accurate time derivative of χ(t). Now the event can be associated with the inbound crossing of the boundary of the threshold domain D=θ[χ(t)−D]θ[−{dot over (χ)}(t)], where the threshold D is set at a positive value to eliminate the rest of the signal's stationary points.

3.1 Example: Analog Bimodal Coincidence (ABC) Counting Systems

[0098] Let us illustrate the usage of a threshold filter, in combination with multimodal pulse shaping and analog counting, in a signal processing module for a two-detector charged particle telescope. This module is an example of an Analog Bimodal Coincidence (ABC) counting system.

[0099] In our approach, we relate the short-duration particle events to certain stationary points (e.g., local maxima) of a relatively slow analog signal. Those points can be accurately identified and characterized if the time derivative of the signal is available. Thus the essence of ABC counting systems is in the use of multiple signal characteristics—here a signal and its time derivative—and signals from multiple sensors in coincidence to achieve accuracy in both the amplitude and timing measurements while using low-speed, analog signal processing circuitry. This allows us to improve both the engineering aspects of the instrumentation and the quality of the scientific data.

[0100] A simplified schematic of the module is shown in FIG. 7. A bimodal pulse shaping is used to obtain an accurate time derivative of the signal from a detector. Comparators are used to obtain two-level signals with the transitions at appropriate threshold crossings (e.g., zero crossings for the derivative signal). Simple asynchronous analog switches are used to obtain the products of the comparators' outputs suitable for appropriate conditional and coincidence counting. The comparators and the analog switches constitute the threshold domain filter with the thresholds {D₁}, {D₂}, and the grounds as the control levels. A-Counters are employed for counting the crossings of the threshold domains' boundaries. In its simplest form, an A-Counter is a differentiating circuit (such as a simple RC-differentiator) with a relatively small time constant (in order to keep the dead-time losses small), followed by a precision diode and an integrator with a large time constant (at least an order of magnitude larger than the inverted smallest rate to be measured). A TOF selector employs an additional pulse shaping amplifier, and a pair of comparators with the levels corresponding to the smallest and the largest time of flight.

[0101] Bimodal pulse shaping and instantaneous rate of signal's maxima When the time derivative of a signal is available, we can relate the particle events to local maxima of the signal and accurately identify these events. Thus bimodal pulse shaping is the key to the high timing accuracy of the module. As shown in FIG. 7, a bimodal pulse shaping unit outputs two signals, where the second signal is proportional to an accurate time derivative of the first output. The rate R(t), in the moving window of time w_(τ)(t), of a signal's maxima above the threshold D can be expressed as $\begin{matrix} {{{R(t)} = {{w_{T}(t)}*{{\frac{}{t}\left\{ {{\theta \left\lbrack {{x(t)} - D} \right\rbrack}\quad {\theta \left\lbrack {- {\overset{.}{x}(t)}} \right\rbrack}} \right\}}}_{+}}},} & (17) \end{matrix}$

[0102] where |y|₊ denotes the positive part of y (see equation (7)), θ is the Heaviside unit step function, and the asterisk denotes convolution. Equation (17) represents an idealization of the measuring scheme consisting of the following steps: (i) the first output of the bimodal pulse shaping unit is passed through a comparator set at level D, and the second output—through a comparator set at zero level; (ii) the product of the outputs of the comparators is differentiated, (iii) rectified by a (precision) diode, and (iv) integrated on a time scale T (by an integrator with the impulse response w_(T)(t)). Note that steps (ii) through (iv) represent passing the product of the comparators through an A-Counter. Also note that the output of step (iii) is the instantaneous rate of the signal's maxima above threshold D.

[0103] Basic coincidence counting For basic coincidence counting, the coincident rate R_(c)(t) can be written as $\begin{matrix} {{{R_{c}(t)} = {{w_{T}(t)}*{{\frac{}{t}\left\{ {{\theta \left\lbrack {{x_{1}(t)} - D_{1}} \right\rbrack}\quad {\theta \left\lbrack {- {{\overset{.}{x}}_{1}(t)}} \right\rbrack}\quad {\theta \left\lbrack {{x_{2}(t)} - D_{2}} \right\rbrack}} \right\}}}_{+}}},} & (18) \end{matrix}$

[0104] where the notations are as in equation (17). One can see that equation (18) differs from equation (17) only by an additional term in the product of the comparators' outputs.

[0105] Transition to realistic model of measurements It can be easily seen that equations (17) and (18) do not correctly represent any practical measuring scheme implementable in hardware. For example, both equations contain derivatives of discontinuous Heaviside functions, and thus instantaneous rates are expressed through singular Dirac δ-functions. To make a transition from an ideal measurement scheme to a more realistic model, we replace the Heaviside step functions by ‘real’ discriminators (θ(χ)→α_(δt)(t)*F_(ΔD)(χ), where α_(δt)(t) is a continuous kernel such that ∫_(−∞) ²⁸ dtα_(δt)(t)=1), and perform differentiation through a continuous kernel $\left( \left. {\frac{}{t}\quad \ldots}\rightarrow{{{\overset{.}{\alpha}}_{\delta \quad t}(t)}*\ldots} \right.\quad \right),$

[0106] etc. We choose appropriate functional representations of F_(ΔD), α_(δt)(t), etc., for various elements of a schematic, and also add appropriate noise sources such as thermal noise at all intermediate measuring steps. FIGS. 8 and 9 illustrate such realistic measurements of instantaneous rates of extrema and coincident maxima, respectively. Notice that, in both figures, an event is represented by a narrow peak of a prespecified area in the instantaneous rates.

[0107] Time-of-flight (TOF) constrained measurements The time-of-flight constrained coincident rate can be expressed, for times of flight larger than Δt, as $\begin{matrix} {{_{c} = {{w_{T}(t)}*{{\frac{}{t}\quad {\theta \left\lbrack {{\overset{.}{h}*{{_{12} - _{21}}}_{+}} - Z_{\Delta \quad t}} \right\rbrack}}}_{+}}},} & (19) \end{matrix}$

[0108] where h is some (unipolar or bipolar) impulse response function, Z_(Δt) is a threshold level corresponding to the TOF equal to Δt, and D_(ij)=|θ[χ_(i)(t)−D_(i)]θ[−χ_(i)(t)]θ[χ_(j)(t)−D_(j)]|₊. Thus a TOF selector (see FIG. 7) will consist of a pulse shaping amplifier with an impulse response h, and a differential comparator. FIG. 10(a) illustrates coincident counting according to equation (19), and FIG. 10(b) provides an example of using a realistic model of the TOF measurements, with functional representations of the elements of the schematic corresponding to commercially-available, off-the-shelf (COTS) components. As can be seen in the figure, the performance of the system is not significantly degraded by the transition from an idealized to a more realistic model.

4 Analog Rank Filtering

[0109] In ARTEMIS, Analog Rank Filtering can be used for establishing and maintaining the analog control levels of the Threshold Domain Filtering. It ensures the adaptivity of the Threshold Domain Filtering to changes in the measurement conditions (e.g., due to nonstationarity of the signal or instrument drift), and thus the optimal separation of the features of interest from the rest of the signal. For example, the threshold level D in the domain D=θ[χ(t)−D]θ[{dot over (χ)}(t)] can be established by means of Analog Rank Filtering to separate the stationary points of interest from those caused by noise. Note that the Analog Rank Filtering outputs the control levels indicative of the salient properties of the input signal(s), and thus can be used as a stand-alone embodiment of ARTEMIS for adaptive real-time signal conditioning, processing, analysis, quantification, comparison, and control, and for detection, quantification, and prediction of changes in signals.

[0110] Creating and maintaining baseline and analog control levels by analog rank filters Analog rank filters can be used to establish various control levels (reference thresholds) for the threshold filter. When used in ARTEMIS, rank-based filters allows us to reconcile, based on the rank filters' insensitivity to outliers, the conflicting requirements of the robustness and adaptability of the control levels of the Threshold Domain Filtering. In addition, the control levels created by Analog Rank Filters are themselves indicative of the salient properties of the input signal(s).

4.1 Adaptive Analog Rank Filters (AARFs)

[0111] Rank filter in RC window When the time averaging filter in equation (D-3) is an RC integrator (RC=τ), the differential equation for the output D_(q)(t) of a rank filter takes an especially simple form and can be written as $\begin{matrix} {{\frac{D_{q}}{t} = \frac{{A\left( {{2q} - 1} \right)} - {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left\lbrack {{D_{q}(t)} - {x(t)}} \right\rbrack}}{\left. {2A\quad \tau \quad {h_{\tau}(s)}*{f_{\Delta \quad D}\left\lbrack {{D_{q}(t)} - {x(s)}} \right\rbrack}} \right|_{s = t}}},} & (20) \end{matrix}$

[0112] where ${{h_{\tau}(t)} = {{\theta (t)}\quad {{\exp \left( {{- \frac{t}{\tau}} - {\ln \quad \tau}} \right)}.^{4}{\,^{4}{In}}}\quad {more}\quad {explicit}\quad {notation}}},{{the}\quad {convolution}\quad {integral}\quad {in}\quad {the}\quad {denominator}\quad {of}}$ equation(  20)  can  be  written  as $\left. {{h_{\tau}(s)}*{f_{\Delta \quad D}\left\lbrack {{D_{q}(t)} - {x(s)}} \right\rbrack}} \right|_{s = t} = {\frac{1}{\tau}{\int_{- \infty}^{t}{{s}\quad {\exp \left( \frac{s - t}{\tau} \right)}\quad {{f_{\Delta \quad D}\left\lbrack {{D_{q}(t)} - {x(s)}} \right\rbrack}.}}}}$

[0113] The solution of this equation is ensured to rapidly converge to D_(q)(t) of the chosen quantile order q regardless of the initial condition (Nikitin and Davidchack, 2003b). Note also that the continuity of the comparator is essential for the right-hand side of equation (20) to be well behaved.

[0114] The main obstacle to a straightforward analog implementation of the filter given by equation (20) is that the convolution integral in the denominator of the right-hand side needs to be re-evaluated (updated) for each new value of D_(q). If we wish to implement an analog rank filter in a simple feedback circuit, then we should replace the right-hand side of equation (20) by an approximation which can be easily evaluated by such a circuit. Of course, one can employ a great variety of such approximations (Bleistein and Handelsman, 1986, for example), whose suitability will depend on a particular goal. A very simple approximation becomes available in the limit of sufficiently small τ, since then we can replace h_(r)(S)*f_(ΔD)[D_(q)(t)−χ(s)]|_(s=t) by h_(r)(t)*f_(ΔD)[D_(q)(t)−χ(t)] in equation (20). As was shown by Nikitin and Davidchack (2003b), this simple approximation can still be used for an arbitrary time window w(t), if we represent w(t) as a weighted sum of many RC integrators with small τ. However, this approximation fails when the threshold resolution is small (e.g., when ΔD<|h_(r)(t)*{dot over (χ)}(t)|τ), and thus cannot be used in real-time processing of non-stationary signals.

[0115] Adaptive approximation of a feedback rank filter in an arbitrary time window A rank filter in a boxcar moving time window B_(T)(t)=[θ(t)−θ(t−T)]/T is of a particular interest, since it is the most commonly used window in digital rank filters. The output D_(q) of an analog rank filter in this window is implicitly defined as B_(T)(t)*F_(ΔD)[D_(q)−χ(t)]=q. To construct an approximation for this filter suitable for implementation in an analog feedback circuit, we first approximate the boxcar window B_(T)(t) by the following moving window w_(N)(t):⁵ $\begin{matrix} {{{w_{N}(t)} = {\frac{t}{N}\quad {\sum\limits_{k = 0}^{N - 1}{h_{\tau}\left( {t - {2\quad k\quad \tau}} \right)}}}},} & (21) \end{matrix}$

[0116] where τ=T/(2N). The first moments of the weighting functions w_(N)(t) and B_(T)(t) are identical, and the ratio of their respective second moments is {square root}{square root over (1+2/N²)}≈1+1/N². The other moments of the time window w_(N)(t) also converge rapidly, as N increases, to the respective moments of B_(T)(t), which justifies the approximation of equation (21).

[0117] Now, the output of a rank filter in such a window can be approximated as discussed earlier, namely as (Nikitin and Davidchack, 2003b)⁶ $\begin{matrix} {{\frac{D_{q}}{t} \approx \frac{{A\quad {N\left( {{2q} - 1} \right)}} - {\sum\limits_{k = 0}^{N - 1}{{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left\lbrack {{D_{q}(t)} - {x\left( {t - {2k\quad \tau}} \right)}} \right\rbrack}}}{2A\quad \tau \quad {h_{\tau}(t)}*{\sum\limits_{k = 0}^{N - 1}{f_{\Delta \quad D}\left\lbrack {{D_{q}(t)} - {x\left( {t - {2k\quad \tau}} \right)}} \right\rbrack}}}},} & (22) \end{matrix}$

[0118] where τ=T/(2N). Note that the accuracy of this approximation is contingent on the requirement that ΔD>|h_(r)(t)*{dot over (χ)}(t)|τ. This means that, if we wish to have a simple analog circuit and keep N relatively small, we must choose ΔD sufficiently large for the approximation to remain accurate. On the other hand, we would like to maintain high resolution of the acquisition system, that is, to keep ΔD small. ${{h_{\tau}(t)}*{f_{\Delta \quad D}\left\lbrack {{D_{q}(t)} - {x\left( {t - {2k\quad \tau}} \right)}} \right\rbrack}} = {\frac{1}{\tau}{\int_{- \infty}^{t}{{s}\quad {\exp \left( \frac{s - t}{\tau} \right)}\quad {{f_{\Delta \quad D}\left\lbrack {{D_{q}(s)} - {x\left( {s - {2k\quad \tau}} \right)}} \right\rbrack}.}}}}$

[0119] In order to reconcile these conflicting requirements, we propose to use an adaptive approximation, which reduces the resolution only when necessary. This can be achieved, for example, by using equation (D-2) and rewriting the threshold derivative of h_(r)(t)*{tilde over (F)}_(ΔD)[D_(q)−χ(t)] as $\begin{matrix} {{{{h_{\tau}(t)}*{f_{\Delta \quad D}\left\lbrack {D_{q} - {x(t)}} \right\rbrack}} \approx \frac{{h_{\tau}(t)}*\begin{Bmatrix} {{{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left\lbrack {D_{q +} - {x(t)}} \right\rbrack} -} \\ {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left\lbrack {D_{q -} - {x(t)}} \right\rbrack} \end{Bmatrix}}{4{A\left( {D_{q +} - D_{q -}} \right)}}},} & (23) \end{matrix}$

[0120] where D_(q±) is the output of a rank filter of the quantile order q±δq, δq<<q. In essence, the approximation of equation (23) amounts to decreasing the resolution of the acquisition system only when the amplitude distribution of the signal broadens, while otherwise retaining high resolution.

[0121] Combining equations (21-23), we arrive at the following representation of an adaptive approximation to a feedback rank filter in a boxcar time window of width T: $\begin{matrix} {{{\overset{.}{D}}_{q}(t)} = {\frac{1}{2}\left\lbrack {{D_{q +}(t)} + {D_{q -}(t)}} \right\rbrack}} & (24) \\ {{{\overset{.}{D}}_{q +}(t)} = \frac{{A\quad N\quad \left( {{2q} - 1 + {2\quad \delta \quad q}} \right)} - {\sum\limits_{k = 0}^{N - 1}{{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left\lbrack {{D_{q +}(t)} - {x\left( {t - {2k\quad \tau}} \right)}} \right\rbrack}}}{{h_{\tau}(t)}*\delta \quad {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}(t)}}} & \quad \\ {\quad \frac{\delta \quad {D_{q}(t)}}{\tau}} & \quad \\ {{{\overset{.}{D}}_{q -}(t)} = \frac{{A\quad N\quad \left( {{2q} - 1 - {2\quad \delta \quad q}} \right)} - {\sum\limits_{k = 0}^{N - 1}{{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left\lbrack {{D_{q -}(t)} - {x\left( {t - {2k\quad \tau}} \right)}} \right\rbrack}}}{{h_{\tau}(t)}*\delta \quad {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}(t)}}} & \quad \\ {\quad {\frac{\delta \quad {D_{q}(t)}}{\tau},}} & \quad \\ {where} & \quad \\ {{\delta \quad {D_{q}(t)}} = {{D_{q +}(t)} - {{D_{q -}(t)}\quad {and}}}} & (25) \\ {{\delta \quad {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}(t)}} = {\sum\limits_{k = 0}^{N - 1}\left\{ {{{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left\lbrack {{D_{q +}(t)} - {x\left( {t - {2\quad k\quad \tau}} \right)}} \right\rbrack} -} \right.}} & \quad \\ {\left. \quad {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left\lbrack {{D_{q -}(t)} - {x\left( {t - {2k\quad \tau}} \right)}} \right\rbrack} \right\}.} & \quad \end{matrix}$

[0122] This approximation preserves its validity for high resolution comparators (small ΔD), and its output converges, as N increases, to the output of the ‘exact’ rank filter in the boxcar time window B_(T)(t). Unlike the currently known approaches (see, for example, Urahama and Nagao 1995; Opris 1996), the analog rank filters enabled through equation (24) are not constrained by linear convergence and allow real time implementation on an arbitrary timescale, thus enabling high speed real time rank filtering by analog means. The accuracy of this approximation is best described in terms of the error in the quantile q. That is, the output D_(q)(t) can be viewed as bounded by the outputs of the ‘exact’ rank filter for different quantiles q±Δq. When ΔD and δq in equation (24) are small, the error range Δq is of order 1/N.

[0123] Note that, even though equation (24) represents a feedback implementation of a rank filter, it is stable with respect to the quantile values q. In other words, the solution of this equation will rapidly converge to the ‘true’ value of D_(q)(t) regardless of the initial condition, and the time of convergence within the resolution of the filter ΔD for any initial condition will be just a small fraction of τ. This convergence property is what makes the implementation represented by equation (24) suitable for a real time operation on an arbitrary timescale.

[0124] Implementation of AARFs in analog feedback circuits FIG. 11 illustrates implementation of an adaptive real time rank filter given by equation (24) in an analog feedback circuit. One skilled in the art will recognize that this circuit is a simplified embodiment of a more general AARF depicted in FIG. 12.

[0125] Generalized description of AARFs As shown in FIG. 12, an input variable χ(t) and a plurality of feedbacks of Offset Rank Filtered Variables {D_(qi)(t)} are passed through a plurality of (delayed) comparators forming a plurality of outputs of the comparators {{tilde over (F)}_(i) ^(del)(t)}={{tilde over (F)}_(ΔD) ^(del)[D_(qi)(t), χ(t)]}. (Please note that in this and further figures a double line in a diagram indicates a plurality of signals.) Said plurality of the outputs of the comparators {{tilde over (F)}_(i) ^(del)} is used to form (i) a plurality {A(2q_(i)−1)−{tilde over (F)}_(i) ^(del)} of differences between said outputs of the comparators and the respective Offset Quantile Parameters of said Offset Rank Filtered Variables, and (ii) a weighted difference δ{tilde over (F)}_(ΔD)(t)=Σ_(i)α_(i) ^(del), where Σ_(i)α_(i)=0, of said outputs of the comparators. Said weighted difference δ{tilde over (F)}_(ΔD)(t) of the outputs of the comparators is passed through a time averaging amplifier, forming a Density Function h_(r)(t)*δ{tilde over (F)}_(ΔD)(t). The plurality of the feedbacks of the Offset Rank Filtered Variables {D_(qi)(t)} is used to form a weighted difference δD_(q)(t)=Σ_(i)β_(i)D_(qi)(t), where Σ_(i)β_(i)=0, of said feedbacks. Each difference A(2q_(i)−1)−{tilde over (F)}_(i) ^(del) between the outputs of the comparators and the respective Offset Quantile Parameters of the Offset Rank Filtered Variables is multiplied by a ratio of the weighted difference δD_(q)(t) of the feedbacks of the Offset Rank Filtered Variables and the Density Function h_(r)(t)*δ{tilde over (F)}_(ΔD)(t), forming a plurality of time derivatives of Offset Rank Filtered Variables {{dot over (D)}_(qi)(t)}. Said plurality of the time derivatives {{dot over (D)}_(qi)(t)} is integrated to produce the plurality of the Offset Rank Filtered Variables {D_(qi)(t)}. The plurality of the Offset Rank Filtered Variables {D_(qi)(t)} is then used to form an output Rank Filtered Variable D_(q)(t) as a weighted average Σ_(i)w_(i)D_(qi)(t), Σ_(i)w_(i)=1, of said Offset Rank Filtered Variables.

[0126] As an example, FIG. 13 provides a simplified diagram of a 3-comparator implementation of AARF. In this example, the offset quantile orders are q₂=q, q₁=q−dq, and q₃=q+dq, and the weights for weighted average and differences are: w₂=1, w₁=w₃=0, α₂=β₂=0, and α₁=β₁=−α₃=−β₃=−1.

[0127] Note that both the input and output of an AARF are continuous signals. The width of the moving window and the quantile order are continuous parameters as well, and such continuity can be utilized in various analog control systems. The adaptivity of the approximation allows us to maintain a high resolution of the comparators regardless of the properties of the input signal, which enables the usage of this filter for nonstationary signals.

[0128] Also, let us point out that the equations describing this filter are also suitable for numerical computations, especially when the number of data points within the moving window is large. A simple forward Euler method is fully adequate for integrating these equations, and the numerical convolution with an RC impulse response function requires remembering only one previous value. Thus numerical algorithms based on these equations have the advantages of both high speed and low memory requirements.

[0129] Delayed comparators In our description of AARFs we have assumed that the comparators are the delayed comparators with the outputs represented by the moving averages $\begin{matrix} {{{{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}^{del}\left\lbrack {{D_{q}(t)},{x(t)}} \right\rbrack} = {\sum\limits_{k = 0}^{N - 1}{w_{k}\quad {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left\lbrack {{D_{q}(t)} - {x\left( {t - {\Delta \quad t_{k}}} \right)}} \right\rbrack}}}},} & (26) \end{matrix}$

[0130] where w_(k) are positive weights such that Σ_(k)w_(k)=1, and it can be assumed, without loss of generality, that Δt₀=0. Obviously, when N=1, a delayed comparator is just a simple two-level comparator. FIG. 14 illustrates a principle schematic of a delayed comparator.

[0131] Averaging comparators In the description of Adaptive Analog Rank Selectors further in this disclosure we will use another type of a comparator, which we refer to as an averaging comparator. Unlike a delayed comparator which takes a threshold level and a scalar signal as inputs, the inputs of an averaging comparator are a threshold level D and a plurality of input signals {χ_(i)(t)}, i=1, . . . , N. The output of an averaging comparator is then given by the expression $\begin{matrix} {{{{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}^{ave}\left\lbrack {{D_{q}(t)},\left\{ {x_{i}(t)} \right\}} \right\rbrack} = {\sum\limits_{i = 1}^{N}{w_{i}\quad {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left\lbrack {{D_{q}(t)} - {x_{i}(t)}} \right\rbrack}}}},} & (27) \end{matrix}$

[0132] where w_(i) are positive weights such that Σ_(i)w_(i)=1. FIG. 15 illustrates a principle schematic of an averaging comparator.

[0133]FIG. 16 compares the performance of the analog rank filter given by equation (24) to that of the ‘exact’ quantile filter in a boxcar moving window of width T. In this example, the quantile interval δq is chosen as δq=10⁻² (1%). The continuous input signal χ(t) (shown by the solid dark gray line) is emulated as a high resolution time series (2×10³ points per interval T). The ‘exact’ outputs of a boxcar window rank filter are shown by the dashed lines, and their deviations within the ±Δq intervals are shown by the gray bands. The respective outputs of the approximation given by equation (24) are shown by the solid black lines. The width parameter ΔD of the comparators, the width T of the boxcar time window, the quantile order q, and the number N of exponential kernels in the approximation are indicated in the figure.

[0134] The (instantaneous) accuracy of the approximation given by equation (24) decreases when the input signal χ(t) undergoes a large (in terms of the resolution parameter ΔD) monotonic change over a time interval of order τ. The main effect of such a ‘sudden jump’ in the input signal is to delay the output D_(q)(t) relative to the output of the respective ‘exact’ filter. This delay is shown as Δt in the lower left portion of the upper panel, where the input signal is a square pulse. This timing error Δt is inversely proportional to the number N of the kernels in the approximation. The accuracy of the approximation can also be described in terms of the amplitude error. As can be seen in FIG. 16, the residual oscillations of the outputs of the analog filter occur within the q±1/(2N) interval around the respective outputs of the ‘exact’ filter (that is, within the width of the gray bands in the figure).

[0135] Establishing internal reference signal (baseline and analog control levels) As stated earlier, a primary use of Analog Rank Filtering in ARTEMIS is establishing and maintaining the analog control levels of the Threshold Domain Filtering, which ensures the adaptivity of the Threshold Domain Filtering to changes in the measurement conditions, and thus the optimal separation of the features of interest from the rest of the signal. Such robust control levels can be established, for example, by filtering the components of the signal with a Linear Combination of Analog Order Statistics Filters operable on a given timescale.

EXAMPLE

[0136] ‘Trimean’ Reference FIG. 17 provides an example of using an internal reference (baseline) for separating signal from noise, and illustrates a technique for establishing a reference baseline as a linear combination of quartile outputs (i.e., q=¼, q=½, and q=¾) of AARFs. In this example, the features of interest are tall pulses protruding from a noisy background. For example, one would want to count the number of such pulses, while ignoring the smaller pulses due to noise. This can be accomplished by choosing a reference baseline such that most of the pulses of interest peak above this baseline, while the accidental crossings of the baseline by noise are rare. A good choice for a baseline thus would be a moving average of the noise plus several standard deviations of the noise in the same moving window of time (a ‘variance’ baseline, gray lines in the figure). However, the presence of the high-amplitude pulses of the ‘useful’ signal will significantly disturb such a baseline. Instead, one can create a baseline by using a linear combination of the outputs of AARFs for different quantile orders (e.g., for the quartiles q=¼, q=½, and q=¾—‘quartile’ baseline, dashed lines in the figure). As shown in the upper panel of the figure, in the absence of the signal of interest the baselines created by both techniques are essentially equivalent. However, as shown in the lower panel of the figure, in the presence of tall pulses the ‘variance’ baseline is significantly disturbed and fails to separate the noise from the signal, while the ‘quartile’ baseline remains virtually unaffected by the addition of these pulses. In both panels, the distance between the time ticks is equal to the width of the moving time window.

[0137]FIG. 18 illustrates a principle diagram of a circuit for establishing a baseline as a linear combination of the quartile outputs (q=¼, q=½, and q=¾) of AARFs. One skilled in the art will recognize that a variety of other linear combinations of outputs of AARFs of different quantile orders can be used for establishing and maintaining the analog control levels of the Threshold Domain Filtering.

[0138] Single Point Analog Rank Tracker (SPART) The approximation of equation (24) preserves its validity for high resolution comparators (small ΔD), and its output converges, as N increases, to the output of the ‘exact’ rank filter in the boxcar time window B_(T)(t). However, even a single-point approximation (N=1 in equation (24), i.e., simple rather than delayed comparators in AARF) can be fully adequate for creating and maintaining the baseline and analog control levels in analog counting systems, since such a simplified implementation preserves the essential properties of the ‘exact’ rank filter needed for this purpose. We shall call this version of an AARF the ‘Single Point Analog Rank Tracker’, or SPART.

[0139] Adaptive Analog Rank Selectors (AARSs) While an AARF operates on a single scalar input signal χ(t) and outputs a q th quantile D_(q)(t) of the input signal in a moving window of time, an AARS operates on a plurality of input signals {χ_(i)(t)}, i=1, . . . , N, and outputs (‘selects’) an instantaneous q th quantile D_(q)(t) (in general, a weighted quantile) of the plurality of the input signals. Such transition from an AARF to an AARS can be achieved by replacing the delayed comparators in an AARF by averaging comparators. For example, a 2-comparator AARS can be represented by the following equation: $\begin{matrix} {\begin{matrix} {{{\overset{.}{D}}_{q}(t)} = {\frac{1}{2}\left\lbrack {{D_{q +}(t)} + {D_{q -}(t)}} \right\rbrack}} \\ {{{\overset{.}{D}}_{q +}(t)} = {\frac{{{AN}\left( {{2q} - 1 + {2\delta \quad q}} \right)} - {\sum\limits_{i = 1}^{N}\quad {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left\lbrack {{D_{q +}(t)} - {x_{i}{()}}} \right\rbrack}}}{{h_{\tau}(t)}*\delta \quad {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}(t)}}\frac{\delta \quad {D_{q}(t)}}{\tau}}} \\ {{{\overset{.}{D}}_{q -}(t)} = {\frac{{{AN}\left( {{2q} - 1 - {2\delta \quad q}} \right)} - {\sum\limits_{i = 1}^{N}\quad {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left\lbrack {{D_{q -}(t)} - {x_{i}(t)}} \right\rbrack}}}{{h_{\tau}(t)}*\delta \quad {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}(t)}}\frac{\delta \quad {D_{q}(t)}}{\tau}}} \end{matrix},} & (28) \\ {{{{where}\quad \delta \quad {D_{q}(t)}} = {{D_{q +}(t)} - {{D_{q -}(t)}\quad {and}}}}{{\delta \quad {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}(t)}} = {\sum\limits_{i = 1}^{N}\quad {\left\{ {{{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left\lbrack {{D_{q +}(t)} - {x_{i}(t)}} \right\rbrack} - {{\overset{\sim}{\mathcal{F}}}_{\Delta \quad D}\left\lbrack {{D_{q -}(t)} - {x_{i}(t)}} \right\rbrack}} \right\}.}}}} & (29) \end{matrix}$

[0140] Note that the time of convergence (or time of rank selection) is proportional to the time constant τ=RC of the RC integrator, and thus can be made sufficiently small for a true real time operation of an AARS. FIG. 19 illustrates a principle schematic of an Adaptive Analog Rank Selector given by equation (28) in an analog feedback circuit. One skilled in the art will recognize that this circuit is a simplified embodiment of a more general AARS depicted in FIG. 20.

[0141] Generalized description of AARSs As shown in FIG. 20, a plurality input variables {χ_(j)(t)}, j=1, . . . , N, and a plurality of feedbacks of Offset Rank Selected Variables {D_(qi)(t)} are passed through a plurality of averaging comparators forming a plurality of outputs of the comparators {{tilde over (F)}_(i) ^(ave)(t)}={{tilde over (F)}_(ΔD) ^(ave)[D_(qi)(t), χ_(j)(t)]}={Σ_(j=1) ^(N)v_(j){tilde over (F)}_(ΔD)[D_(qi)(t)−χ_(j)(t)]}. Said plurality of the outputs of the comparators {{tilde over (F)}_(i) ^(ave)} is used to form (i) a plurality {A(2q_(i)−1)−{tilde over (F)}_(i) ^(ave)} of differences between said outputs of the comparators and the respective Offset Quantile Parameters of said Offset Rank Selected Variables, and (ii) a weighted difference δ{tilde over (F)}_(ΔD)(t)=Σ_(i)α_(i){tilde over (F)}_(i) ^(ave), where Σ_(i)α_(i)=0, of said outputs of the comparators. Said weighted difference δ{tilde over (F)}_(ΔD)(t) of the outputs of the comparators is passed through a time averaging amplifier, forming a Density Function h_(r)(t)*δ{tilde over (F)}_(ΔD)(t). The plurality of the feedbacks of the Offset Rank Selected Variables {D_(qi)(t)} is used to form a weighted difference δD_(q)(t)=Σ_(i)β_(i)D_(qi)(t), where Σ_(i)β_(i)=0, of said feedbacks. Each difference A(2q_(i)−1)−{tilde over (F)}_(i) ^(ave) between the outputs of the comparators and the respective Offset Quantile Parameters of the Offset Rank Selected Variables is multiplied by a ratio of the weighted difference δD_(q)(t) of the feedbacks of the Offset Rank Selected Variables and the Density Function h_(r)(t)*δ{tilde over (F)}_(ΔD)(t), forming a plurality of time derivatives of Offset Rank Selected Variables {{dot over (D)}_(qi)(t)}Said plurality of the time derivatives {{dot over (D)}_(qi)(t)} is integrated to produce the plurality of the Offset Rank Selected Variables {D_(qi)(t)}. The plurality of the Offset Rank Selected Variables {D_(qi)(t)} is then used to form an output Rank Selected Variable D_(q)(t) as a weighted average Σ_(i)w_(i)D_(qi)(t), Σ_(i)w_(i)=1, of said Offset Rank Selected Variables.

[0142] Adaptive Analog Rank Selectors are well suited for analysis and conditioning of spatially-extended objects such as multidimensional images. For example, a plurality of input signals can be the plurality of the signals from a vicinity around the spatial point of interest, and the weights {v_(j)} can correspond to the weights of a spatial averaging kernel. This enables us to design highly efficient real-time analog rank filters for removing dynamic as well as static impulse noise from an image, as illustrated in FIG. 21 for a two-dimensional monochrome image. In this example, a median filter (q=½) according to equation (28) is used.⁷ Panel (a) shows the original (uncorrupted) image. Panel (b) shows the snapshots, at different times, of the noisy image and the respective outputs of the filter. In this example, approximately {fraction (4/5)} of the pixels of the original image are affected by a bipolar non-Gaussian random noise at any given time. Panel (c) provides an example of removing the static noise (⅓ of the pixels of the original image are affected). This example also illustrates the fact that the characteristic time of convergence of the filter based on equation (28) is only a small fraction of the time constant τ=RC of the RC integrator, which makes this circuit suitable for a truly real-time operation. This fast convergence is a consequence of the fact that the speed of convergence is inversely proportional to the density function h_(r)(t)*δ{tilde over (F)}_(ΔD)(t).

4.2 Explicit Analog Rank Locators (EARLs)

[0143] Explicit expression for an analog quantile filter Note that a differential equation is not the only possible embodiment of an analog quantile filter. Other means of locating the level lines of the threshold distribution function can be developed based on the geometric interpretation discussed in §D-2. For example, one can start by using the sifting property of the Dirac δ-function to write D_(q)(t) as

D _(q)(t)=∫_(−∞) ^(∞) dDDδ[D−D _(q)(t)]  (30)

[0144] for all t. Then, recalling that D_(q)(t) is a root of the function Φ(D,t)−q and that, by construction, there is only one such root for any given time t, we can replace the δ-function of thresholds with that of the distribution function values as follows:

D _(q)(t)=∫_(−∞) ^(∞) dDDφ(D,t)δ[Φ(D,t)−q].  (31)

[0145] Here we have used the following property of the Dirac δ-function (see Davydov, 1988, p. 610, eq. (A 15), for example): $\begin{matrix} {{{\delta \left\lbrack {a - {f(x)}} \right\rbrack} = {\sum\limits_{i}\frac{\delta \left( {x - x_{i}} \right)}{{f^{\prime}\left( x_{i} \right)}}}},} & (32) \end{matrix}$

[0146] where |f′(χ_(i))| is the absolute value of the derivative of f(χ) at χ_(i), and the sum goes over all χ_(i) such that f(χ_(i))=α. We have also used the fact that φ(D,t)≧0.

[0147] The final step in deriving a practically useful realization of the quantile filter is to replace the δ-function of the ideal measurement process with a finite-width pulse function g_(Δq) of the real measurement process, namely

D _(q)(t)=∫_(−∞) ^(∞) dDDφ(D,t)g _(Δq)[Φ(D,t)−q],  (33)

[0148] where Δq is the characteristic width of the pulse. That is, we replace the δ-function with a continuous function of finite width and height. This replacement is justified by the observation made earlier: it is impossible to construct a physical device with an impulse response expressed by the δ-function, and thus an adequate description of any real measurement must use the actual response function of the acquisition system instead of the δ-function approximation. We shall call an analog rank filter given by equation (33) the Explicit Analog Rank Locator (EARL).

[0149] Analog L filters and α-trimmed mean filters It is worth pointing out the generalization of analog quantile filters which follows from equation (31). In the context of digital filters, this generalization corresponds to the L filters described by Bovik et al. (1983).

[0150] Indeed, we can write a linear combination of the outputs of various quantile filters as $\begin{matrix} {{{D_{L}(t)} = {{\int_{0}^{1}\quad {{{{qW}_{L}(q)}}{D_{q}(t)}}} = {{\int_{0}^{1}\quad {{{qW}_{L}}(q){\int_{- \infty}^{\infty}\quad {{{DD}}\quad {\varphi \left( {D,t} \right)}{\delta \left\lbrack {{\Phi \left( {D,t} \right)} - q} \right\rbrack}}}}}\quad = {\int_{- \infty}^{\infty}\quad {{{DD}}\quad {\varphi \left( {D,t} \right)}{W_{L}\left\lbrack {\Phi \left( {D,t} \right)} \right\rbrack}}}}}},} & (34) \end{matrix}$

[0151] where W_(L) is some (normalized) weighting function. Note that the difference between equations (34) and (33) is in replacing the narrow pulse function g_(Δq) in (33) by an arbitrary weighting function W_(L).

[0152] A particular choice of W_(L) in (34) as the rectangular (boxcar) probe of width 1-2α, centered at ½, will correspond to the digital α-trimmed mean filters described by Bendat (1998):

{overscore (D)} _(α)(t)=∫_(−∞) ^(∞) dDDφ( D,t)b _(α)[Φ(D,t)], 0≦α<½,  (35)

[0153] where ${b_{\alpha}(x)} = {{\frac{1}{1 - {2\alpha}}\left\lbrack {{\theta \left( {x - \alpha} \right)} - {\theta \left( {x - 1 + \alpha} \right)}} \right\rbrack}.}$

[0154] When α=0, equation (35) describes the running mean filter, {overscore (D)}_(α=0)(t)={overscore (χ)}(t), and in the limit α→½ it describes the median filter, lim_(α→1/2){overscore (D)}_(α)(t)=D_(m)(t).

[0155] Dealing with improper integration: Adaptive EARL The main practical shortcoming of the filter given by equation (33) is the improper integral with respect to threshold. This difficulty, however, can be overcome by a variety of ways.

[0156] For example, we can use the fact that rank is not affected by a monotonic transformation. That is, if D_(q) is the qth quantile of the distribution w_(r)(t)*θ[D−χ(t)] (that is, w_(r)(t)*θ[D_(q)−χ(t)]=q), then F(D_(q)) is the qth quantile of the distribution w_(r)(t)*θ{F(D)−F[χ(t)]}:

w _(r)(t)*θ{F(D _(q))−F[χ(t)]}=q,  (36)

[0157] where F(ξ) is a monotonically increasing function of ξ.

[0158] Now let us choose {overscore (ξ)}F(ξ) as the response of a real comparator, F(ξ)=F_(μ2)(ξ−μ₁), where μ₁ is indicative of the mean value of χ(t) in a moving window w_(T) of the width T much greater than τ, and the width parameter μ₂ is indicative of the signal's deviation around μ₁ (on a similar time interval). For example, $\begin{matrix} \left\{ {\begin{matrix} {{\overset{\_}{\xi} = {\mathcal{F}_{\mu 2}\left( {\xi - \mu_{1}} \right)}}\quad} \\ {{{\mu_{1}(t)} = {{w_{T}(t)}*{x(t)}}}\quad} \\ {{\mu_{2}(t)} = \sqrt{2\left\lbrack {{{w_{T}(t)}*{x^{2}(t)}} - {\mu_{1}^{2}(t)}} \right\rbrack}} \end{matrix}.} \right. & (37) \end{matrix}$

[0159] Then an equation for the adaptive explicit analog rank locator can be rewritten as $\begin{matrix} {{{D_{q}(t)} = {{\mu_{1}(t)} + {\mathcal{F}_{\mu 2}^{- 1}\left\{ {\int_{0}^{1}\quad {{{\chi\chi}}{\overset{\sim}{\varphi}\left( {\chi,t} \right)}{g_{\Delta \quad q}\left\lbrack {{\overset{\sim}{\Phi}\left( {\chi,t} \right)} - q} \right\rbrack}}} \right\}}}},{where}} & (38) \\ {{{\overset{\sim}{\varphi}\left( {\chi,t} \right)} = \frac{\left( {{w_{\tau}(t)}*\left\{ {{K(t)}{f_{\Delta \quad D}\left\lbrack {\chi - {\overset{\_}{x}(t)}} \right\rbrack}} \right\}} \right)}{{w_{\tau}(t)}*{K(t)}}},{and}} & (39) \\ {{\overset{\sim}{\Phi}\left( {\chi,t} \right)} = {\frac{\left( {{w_{\tau}(t)}*\left\{ {{K(t)}{\mathcal{F}_{\Delta \quad D}\left\lbrack {\chi - {\overset{\_}{x}(t)}} \right\rbrack}} \right\}} \right)}{{w_{\tau}(t)}*{K(t)}}.}} & (40) \end{matrix}$

[0160] Note that the improper integral of equation (33) has become an integral over the finite interval [0,1], where the variable of integration is a dimensionless variable χ.

[0161]FIG. 22 illustrates the performance of adaptive EARLs operating as amplitude (panel b)) and counting (panel (c)) rank filters in comparison with the ‘exact’ outputs of the respective analog rank filters given by equation (D-6).

[0162] Discrete-Threshold Approximation to Adaptive EARL Given a monotonic array of threshold values between zero and unity, the integral in equation (38) can be evaluated in finite differences leading to a discrete-threshold approximation to adaptive EARL as follows:

D _(q)(t)=μ₁(t)+F _(μ2) ⁻¹({overscore (D)} _(q)),  (41)

[0163] where {overscore (D)}_(q) is the root of {tilde over (Φ)}(D,t)=q. For example, ${{\overset{\_}{D}}_{q} = {\frac{1}{2}\left( {D_{j1} + D_{j2}} \right)}},$

[0164] where 0≦D_(i)≦1 is a monotonic array of threshold values, D_(i)≦D_(i+1), and j₁ and j₂ are such that {tilde over (Φ)}(D_(j1), t)≦q<{tilde over (Φ)}(D_(j1+1), t) and {tilde over (Φ)}(D_(j2),t)<q≦{tilde over (Φ)}(D_(j2+1),t). Note that a binary search, as well as more effective methods, can be used for the root finding, and thus the discrete-threshold approximation to adaptive EARL can have significant advantages over the state-of-art numerical algorithms for rank filtering, especially when operating on large time scales.

[0165] Discrete-Threshold Approximation to AARF It is worth pointing out that the invariance of rank to a monotonic transformation allows us to define the following discrete-threshold approximation to an adaptive analog rank filter: $\begin{matrix} {{{{\overset{.}{\overset{\_}{D}}}_{q}(t)} = \frac{{K(t)}\left\{ {q - {\mathcal{F}_{\Delta \quad \overset{\_}{D}}\left\lbrack {{{\overset{\_}{D}}_{q}(t)} - {\overset{\_}{x}(t)}} \right\rbrack}} \right\}}{\tau \quad {h_{\tau}(t)}*\left\{ {{K(t)}{f_{\Delta \quad \overset{\_}{D}}\left\lbrack {{D_{k}(t)} - {\overset{\_}{x}(t)}} \right\rbrack}} \right\}}},{{{where}\quad {D_{k}(t)}} = {{\delta \quad {Dk}\text{t}} = {\delta \quad {{Dnint}\left( {{{{\overset{\_}{D}}_{q}(t)}/\delta}\quad D} \right)}}}},^{8}{{{and}\quad \delta \quad D}{\Delta \quad {\overset{\_}{D}.}}}} & (42) \end{matrix}$

4.3 EXAMPLE Bimodal Analog Sensor Interface System (BASIS)

[0166] BASIS constitutes an analog signal processing module, initially intended to be coupled with a photon counting sensor such as a photomultiplier tube (PMT). The resulting integrated photodetection unit allows fast and sensitive measurements in a wide range of light intensities, with adaptive automatic transition from counting individual photons to the continuous (current) mode of operation. When a BASIS circuit is used as an external signal processing unit of a photosensor, its output R_(out)(t) is a continuous signal for both photon counting and current modes, with a magnitude proportional to the rate of incident photons. This signal can be, for example, used directly in analog or digital measuring and/or control systems, differentiated (thus producing continuous time derivative of the incident photon rate), or digitally sampled for subsequent transmission and/or storage. Thus, BASIS converts the raw output of a photosensor to a form suitable for use in continuous action light and radiation measurements.

[0167] The functionality of the BASIS is enabled through the integration of three main components: (1) Analog Counting Systems (ACS), (2) Adaptive Analog Rank Filters (AARF), and (3) Saturation Rate Monitors (SRM), as described further. The BASIS system provides several significant advantages with respect to the current state-of-art signal processing of photosignals. Probably the most important advantage is that, by seamlessly merging the counting and current mode regimes of a photosensor, the output of the BASIS system has a contiguous dynamic range extended by 20-30 dB. This technical enhancement translates into important commercial advantages. For example, the extension of the maximum rate of the photon counting mode of a PMT by 20 dB can be used for a tenfold increase in sensitivity or speed of detection. Since sensitivity and speed of light detecting units is often the bottleneck of many instruments, this increase will result in upgrading the class of equipment at a fraction of the normal cost of such an upgrade.

[0168] In addition, the analog implementation of the current mode regime reduces the overall power consumption of the detector. These capabilities will benefit applications dealing with light intensities significantly changing in time, and where autonomous low-power operation is a must. One particular example of such an application is a high sensitivity handheld radiation detection system that could be powered with a small battery. Such a compact detector could be used by United States customs agents to search for nuclear materials entering the country.

[0169] Principal components (modules) of BASIS As shown in FIG. 23, the principal components (modules) of the BASIS can be identified as (I) Rank Filtering (or Baseline) Module, (II) Analog Counting Module (ACM), (III) the Saturated Rate Monitor (SRM), and (IV) Integrated Output Module. A brief description of these modules is as follows.

[0170] Rank Filtering (or Baseline) Module As shown in FIG. 23, the Baseline Module outputs the rank-filtered signal D_(q)(t; T), which is the qth quantile of the signal χ(t) in a moving time window of characteristic width T. The rank filtering is accomplished by means of an Adaptive Analog Rank filter (AARF) (see §4.1), or its single-point version referred to as a Single Point Analog Rank Tracker (SPART) (ibidem). AARFs, due to their insensitivity to outliers, are essential for stable operation of BASIS, and are used to create, maintain, and modify its analog control levels (the control levels of the comparators in the Threshold Domain Filter). For example, a baseline created by an AARF operating as a median filter (i.e., q=½) will not significantly change its value unless the photoelectron rate exceeds about half of the saturation rate R_(max). On the other hand, this baseline will track the changes in the noise level, providing an effective separation between noise and the photosignal.

[0171] When the photoelectron rate exceeds the saturation rate R_(max), the output of the AARF itself will well represent the central tendency of the photosignal, and thus will be proportional to the incident photon rate. In the ‘transitional’ region (around R_(max)), the output of the BASIS can be constructed as a weighted sum of the outputs of AARF and ACM. Thus the total output of BASIS can be constructed as a combination of the outputs of AARF, ACM, and SRM, and calibrated to be proportional to the incident photon rate.

[0172] Analog Counting Module (ACM) This module produces a continuous output, R(t), equal to the rate of upward zero crossings of the difference, χ(t)−rD_(q)(t; T), in the time window, w(t), given by $\begin{matrix} {{{R(t)} = {{{w(t)}*{(t)}} = {w*{{\frac{\quad}{t}{\theta \left( {x - {rD}_{q}} \right)}}}_{+}}}},} & (43) \end{matrix}$

[0173] where R(t) denotes the instantaneous crossing rate (Nikitin et al., 2003). The value of the parameter r generally depends on the distribution of the photosensor's noise in relation to the single photoelectron distribution of the photosensor, and can normally be found either theoretically or empirically based on the required specifications. This parameter affects the ratio of the false positive (noise) and the false negative counts (missed photoelectrons) and allows us to achieve a desired compromise between robustness and selectivity. In the subsequent simulated example (see FIG. 25), the quantile parameter q=½ (AARF operating as a median filter), and r=6. An attractive choice for the time averaging filter w(t) is a sequence of 3 RC-integrators with identical time constants τ=T/6, which will provide us with rate measurements corresponding to the time averaging with a rectangular moving window of width T (Nikitin et al., 2003).

[0174] The main advantage of the analog counting represented by equation (43) is a complete absence of dead time effects (see Nikitin et al. 2003). In addition, the baseline created by an AARF will not be significantly affected by the photoelectron rates below approximately (1−q) R_(max) (half of the photosensor saturation rate for a median filter). Thus the maximum measured rate is limited only by the single electron response of a photosensor. This is at least two orders of magnitude higher than the current state of the art photon counting systems. For example, in the simulation presented in FIG. 25, the FWHM of the single electron response is about 1 ns, and the saturation rate of photon counting is about 3×10⁸ s⁻¹. Since the signal-to-noise ratio is proportional to the square root of the rate, the 20 dB increase in the photon counting rate translates into a tenfold increase either in the sensitivity or the speed of detection.

[0175] Saturation Rate Monitor (SRM) The SRM produces a continuous output R_(max)(t) equal to the rate of upward zero crossings of the difference χ(t)−D_(1/2)(t; T) in the time window w(t), $\begin{matrix} {{R_{\max}(t)} = {w*{{{\frac{\quad}{t}{\theta \left( {x - D_{q}} \right)}}}_{+}.}}} & (44) \end{matrix}$

[0176] As was theoretically derived by Nikitin et al. (1998), R_(max) is approximately equal to the maximum rate of upward (or downward) crossings of any constant threshold by the photosensor signal χ(t). When the photoelectron rate λ_(PhE) of a photosensor is much smaller than R_(max), the pileup effects are small, and the photosensor is in a photon counting mode. When λ_(PhE)>>R_(max) the photosensor is in a current mode.

[0177] Thus monitoring R_(max) allows us to automatically handle the transition between the two modes. The horizontal gray line in panel I of FIG. 25 shows the measured R_(max) as a function of the photoelectron rate λ_(PhE). The measured saturation rate is also shown by the horizontal thin solid lines in the lower half of panel III of FIG. 25.

[0178] Integrated Output Module As shown in FIG. 24, the output module of BASIS combines the outputs of the ACM, SRM, and AARF into a single continuous output R_(out)(t). The magnitude of R_(out)(t), for both the photon counting and the current modes, is proportional to the rate of incident photons. This signal can be, for example, used directly in analog or digital measuring and/or control systems, differentiated (thus producing continuous time derivative of the incident photon rate), or digitally sampled for the subsequent transmission and/or storage. For the simulated example shown in FIG. 25, R_(out)(t) was chosen as the following combination of D_(q)(t; T), R(t), and R_(max)(t):

R _(out)(t)=R(t)+βD _(q)(t;T)F _(ΔD) [βD _(q)(t;T)−γR _(max)(t)],  (45)

[0179] where β is a calibration constant, ΔD=αR_(max), α being a small number (of order 10⁻¹), and γ˜½ is a quantile constant. The Integrated Output Module thus includes the ‘transitional’ region between the photon counting and the current modes (shaded in gray in FIG. 25), currently unavailable, into a normal operational range of a photosensor, extending by ˜20 dB the photosensor's contiguous dynamic range.

[0180] Simulated examples of light measurements conducted by PMT with BASIS unit FIG. 25 provides a simulated example of the performance of BASIS used with a PMT. In the simulation, a fast PMT was used (the FWHM of the single electron response is about 1 ns), and the noise rate was chosen to be high (order of magnitude higher than the PMT saturation rate). Panel I of the figure shows the output of BASIS (R_(out), thick solid black line) as a function of the photoelectron rate λ_(PhE), along with the outputs of the Saturation Rate Monitor (R_(max), solid gray line), Rank Filtering Module (D_(1/2), dashed line), and Analog Counting Module (R, thin solid black line). Panel II shows (by gray lines) 1 μs snapshots of the PMT signal for the photoelectron rates much smaller (left), approximately equal (middle), and much higher (right) than the saturation rate of the PMT. This panel also shows (by the black lines) the respective outputs of the Rank Filtering Module D_(1/2)(t), and the baseline levels τD_(1/2)(t) used in the Analog Counting Module (r=6 in the simulation). The instantaneous crossing rates R(t) are also shown (top), and the time constant T of AARF is indicated in the lower left corner of the panel. Panel III illustrates the relation between the noise and photosignal used in the simulation by depicting the accumulated amplitude and counting distributions of the PMT signal. These distributions are shown for three chosen photoelectron rates λ_(PhE), in their relation to the outputs of the Rank Filtering Module (D_(1/2)) and the Saturation Rate Monitor (R_(max)). The resolution ΔD of the acquisition system used for measuring the distributions is indicated in the panel.

[0181]FIG. 26 provides a simulated example of a modification of BASIS designed for detection of fast changes in a light level. The light signal corresponding to this model can be, for example, an intensity modulated light signal passing through a fiber, or fluorescence of dye excited by an action potential wave propagating through a biological tissue. The gray line in the lower panel of the figure shows the time-varying light signal (square pulses). The higher light level corresponds to the photoelectron rate of about 2×10⁹ photoelectrons per second. The width (FWHM) of the single electron response of the photosensor is about 1 ns, and the resulting photosensor electrical signal χ(t) is shown by the gray line in the middle panel.

[0182] As can be seen in the figure, the low signal-to-noise ratio makes fast and accurate deduction of the underlying light signal difficult. The circuit shown at the top of FIG. 26, however, allows reliable timing of the onsets and offsets of the light pulses with better than 10 ns accuracy. The output of the circuit D_(qf)(t; T_(f)) is shown by the black line in the lower panel of the figure. In the example, the quantile parameters of the rank filters are q_(b)=¼ and q_(f)=¾, and the baseline factor is r=1.5. The parameter r allows us to adjust the circuit for optimal performance based on the difference between the low and high light levels.

5 Generation of Monoenergetic Poissonian Pulse Trains

[0183] As another illustration of the current invention, consider a technique and a circuit for generation of monoenergetic Poissonian pulse trains with adjustable rate and amplitude. Generators of such pulse trains can be used, for example, in testbench development and hardware prototyping of instrumentation for nuclear radiation measurements.

[0184] Idealized model of a Poisson pulse train generator An idealized process producing a monoenergetic Poissonian pulse train can be implemented as schematically shown in FIG. 27. Consider a stationary random pulse train Σ_(i)χ_(i)δ(t−t_(i)), where χ_(i) are the amplitudes of the pulses with the arrival times t_(i). This pulse train is filtered by a linear time filter with a continuous impulse response w_(Δr)(t), where Δτ is the characteristic response time of the filter. An example of such a response would be the bipolar pulse w_(Δτ)(t)=[t/Δτ²−t²/(2Δτ³)]e^(−t/Δτ)θ(t), where θ is the Heaviside unit step function. The output χ(t) of the linear time filter can be written as $\begin{matrix} {{{x(t)} = {\sum\limits_{i}^{\quad}\quad {x_{i}{\omega_{\Delta \quad \tau}\left( {t - t_{i}} \right)}}}},} & (46) \end{matrix}$

[0185] and is a continuous signal. The instantaneous rate of upward crossings Nikitin et al. (2003) of a threshold D by this signal can be written as $\begin{matrix} {{{\left( {D,t} \right)} = {{{\frac{\quad}{t}{\theta \left\lbrack {{x(t)} - D} \right\rbrack}}}_{+} = {\sum\limits_{j}^{\quad}\quad {\delta \left( {t - t_{j}} \right)}}}},} & (47) \end{matrix}$

[0186] where t_(j) are the instances of the crossings (that is, χ(t_(j))=D and {dot over (χ)}(t_(j))>0). As was discussed in Nikitin (1998), the pulse train given by equation (47) is an approximately Poissonian train affected by a non-extended dead time of order R_(max) ⁻¹. Thus, when the average rate R(D)=<R(D,t)>_(T) is much smaller than the saturation rate R_(max), R(D,t) will provide a good approximation for a monoenergetic Poissonian pulse train of the average rate R(D).

[0187] When either M₁=0 or W₁₀=0, then, as was shown in Nikitin et al. (1998), the average rate of the upward crossings of a threshold D by the signal χ(t) can be expressed as $\begin{matrix} {{{R(D)} = {R_{\max}{\exp \left\lbrack {{- \frac{1}{2}}\left( \frac{D}{\sigma} \right)^{2}} \right\rbrack}}},} & (48) \end{matrix}$

[0188] and thus the rate of the generated pulse train can be adjusted by an appropriate choice of the threshold value D.

[0189] Practical implementation of a Poisson pulse train generator The idealized process described above is not well suited for a practical generation of a Poissonian pulse train, since, as can be seen from equation (48), at high values of the threshold D the rate of the generated train is highly sensitive to the changes in D. To reduce this sensitivity, one can pass the signal χ(t) through a nonlinear amplifier, e.g., an antilogarithmic amplifier as shown in FIG. 27, thus transforming χ(t) into the signal y(t)=exp [χ(t)/ρ]. Then the average rate of the upward crossings of a threshold D by the signal y(t) can be written as $\begin{matrix} {{{R(D)} = {R_{\max}\exp \left\{ {- {\frac{1}{2}\left\lbrack {\ln \left( \frac{D}{\sigma} \right)} \right\rbrack}^{2}} \right\}}},} & (49) \end{matrix}$

[0190] which is much less sensitive to the relative errors in D.

[0191]FIG. 28 illustrates a simulated performance of an idealized monoenergetic Poisson pulse generator shown in FIG. 27. The upper panel of FIG. 28 shows the output pulse rates as a function of threshold, and the lower panels show the distributions of the pulses' interarrival times for the generator set at two different threshold values. In the figure, the black solid lines show the theoretical curves, and the gray solid lines show the respective results of the simulations.

Articles of Manufacture

[0192] Various embodiments of the invention may include hardware, firmware, and software embodiments, that is, may be wholly constructed with hardware components, programmed into firmware, or be implemented in the form of a computer program code.

[0193] Still further, the invention disclosed herein may take the form of an article of manufacture. For example, such an article of manufacture can be a computer-usable medium containing a computer-readable code which causes a computer to execute the inventive method.

REFERENCES

[0194] B. C. Arnold, N. Balakrishnan, and H. N. Nagaraja. A First Course in Order Statistics. John Wiley & Sons, Inc., 1992.

[0195] J. S. Bendat. Nonlinear system techniques and applications. Wiley, New York, 1998.

[0196] N. Bleistein and R. A. Handelsman. Asymptotic Expansions of Integrals. Dover, New York, 1986.

[0197] A. C. Bovik, T. S. Huang, and Jr. D. C. Munson. A generalization of median filtering using linear combinations of order statistics. IEEE Trans. Acoust., Speech, Signal Processing, ASSP-31:1342-1350, 1983.

[0198] A. S. Davydov. Quantum Mechanics. International Series in Natural Philosophy. Pergamon Press, 2nd edition, 1988. Second Russian Edition published by Nauka, Moscow, 1973.

[0199] P. J. S. G. Ferreira. Sorting continuous-time signals and the analog median filter. IEEE Signal Processing Letters, 7(10):281-283, 2000.

[0200] P. J. S. G. Ferreira. Sorting continuous-time signals: Analog median and median-type filters. IEEE Trans. Signal Processing, 49(11): 2734-2744, November 2001.

[0201] V. Kim and L. Yaroslavsky. Rank algorithms for picture processing. Computer Vision, Graphics and Image Processing, 35:234-258, 1986.

[0202] P. Kinget and M. Steyaert. Analog VLSI integration of massive parallel processing systems. Kluwer, 1997.

[0203] C. L. Lee and C.-W. Jen. Binary partition algorithms and VLSI architectures for median and rank order filtering. IEEE Transactions on Signal Processing, 41(9):2937-2942, 1993.

[0204] C. Mead. Analog VLSI and neural systems. Addison-Wesley, 1989.

[0205] N. R. Murthy and M. N. S. Swamy. On the VLSI implementation of real-time order statistic filters. IEEE Transactions on Signal Processing, 40(5):1241-1252, 1992.

[0206] A. V. Nikitin. Pulse Pileup Effects in Counting Detectors. PhD thesis, University of Kansas, Lawrence, 1998.

[0207] A. V. Nikitin and R. L. Davidchack. Method and apparatus for analysis of variables. Geneva: World Intellectual Property Organization, International Publication Number WO 03/025512, 2003.

[0208] A. V. Nikitin and R. L. Davidchack. Signal analysis through analog representation. Proc. R. Soc. Lond. A, 459(2033):1171-1192, 2003.

[0209] A. V. Nikitin, R. L. Davidchack, and T. P. Armstrong. The effect of pulse pile-up on threshold crossing rates in a system with a known impulse response. Nucl. Instr. & Meth., A411:159-171, 1998.

[0210] A. V. Nikitin, R. L. Davidchack, and T. P. Armstrong. Analog multivariate counting analyzers. Nucl. Instr. & Meth., A496(2-3):465-480, 2003.

[0211] E. Ochoa, J. P. Allebach, and D. W. Sweeney. Optical median filtering using threshold decomposition. Applied Optics, 26(2):252-260, January 1987.

[0212] I. E. Opris. Analog Rank Extractors and Sorting Networks. Ph.D. Thesis, Stanford University, CA, 1996.

[0213] I. Osorio, M. G. Frei, and S. B. Wilkinson. Real-time automated detection and quantitative analysis of seizures and short-term prediction of clinical onset. Epilepsia, 39(6):615-627, 1998.

[0214] S. Paul and K. Hüper. Analog rank filtering. IEEE Trans. Circuits Syst.—1,40(7):469-476, July 1993.

[0215] K. Urahama and T. Nagao. Direct analog rank filtering. IEEE Trans. Circuits Syst.—I, 42(7):385-388, July 1995.

[0216] S. Vlassis, K. Doris, S. Siskos, and I. Pitas. Analog implementation of erosion/dilation, median and order statistics filters. Pattern Recognition, 33(6):1023-1032, 2000.

[0217] Regarding the invention being thus described, it will be obvious that the same may be varied in many ways. Such variations are not to be regarded as a departure from the spirit and scope of the invention, and all such modifications as would be obvious to one skilled in the art are intended to be included within the scope of the following claims. 

We claim:
 1. Method for processing an input signal consisting of a Threshold Domain Filtering step utilizing a threshold domain and at least one of the following additional steps: (a) Multimodal Pulse Shaping; (b) Analog Rank Filtering; and (c) Analog Counting.
 2. Method for signal processing of claim 1 wherein said Threshold Domain Filtering step is used for extraction of one or more features of interest from said input signal to produce one or more output signals.
 3. Method for signal processing of claim 1 wherein said threshold domain is defined by a Control Level Signal consisting of one or more components.
 4. Method for signal processing of claim 1 wherein said Threshold Domain Filtering step outputs a first output value when said input signal is within said threshold domain and a second output value when said input signal is outside of said threshold domain.
 5. Method for signal processing of claim 1 wherein said Threshold Domain Filtering step outputs a first output value when said input signal is within said threshold domain, a second output value when said input signal is outside of said threshold domain, and one or more values when said input signal is inside a finite interval at a boundary of said threshold domain.
 6. Method for signal processing of claim 1 wherein at least one of said additional steps is Multimodal Pulse Shaping and wherein said input signal has one or more components and wherein said Multimodal Pulse Shaping transforms at least one of said components of said input signal into a plurality of signal components where at least one said component represents a derivative of another said component.
 7. Method for signal processing of claim 6 wherein said derivative is a time-derivative.
 8. Method for signal processing of claim 6 wherein said plurality of signal components is representative of one or more features of interest of said input signal.
 9. Method for signal processing of claim 3 wherein one or more components of said Control Level Signal are outputs of a step of Analog Rank Filtering.
 10. Method for signal processing of claim 3 wherein one or more components of said Control Level Signal are results of a step of Analog Rank Filtering of one or more output components of a step of Multimodal Pulse Shaping of said input signal.
 11. Method for signal processing of claim 1 wherein at least one of said additional steps is Analog Counting, wherein said Threshold Domain Filtering step has an output with at least one component and where said Analog Counting comprises the steps of: (a) time-differentiating said component to produce a time-derivative, and (b) rectifying said time-derivative to produce an instantaneous count rate.
 12. Method for signal processing of claim 11 wherein said Analog Counting further comprises the step of: (a) time-integrating said instantaneous count rate to produce a count rate in a moving time window.
 13. Method for Adaptive Analog Rank Filtering operable to transform an input scalar variable into an output Rank Filtered Variable comprising steps of: (a) forming a plurality of outputs of delayed comparators by passing said input variable and a plurality of feedbacks of Offset Rank Filtered Variables through a respective plurality of said delayed comparators; (b) forming a first difference which is a weighted difference of said outputs of the delayed comparators; (c) forming a Density Function by time averaging said first difference; (d) forming a second difference which is a weighted difference of said feedbacks of the Offset Rank Filtered Variables; (e) forming a plurality of differences between the outputs of the delayed comparators and the respective Offset Quantile Parameters of said Offset Rank Filtered Variables; (f) forming a plurality of time derivatives of said Offset Rank Filtered Variables by multiplying each of said plurality of differences by a ratio of said second difference and said Density Function; (g) producing the plurality of the Offset Rank Filtered Variables by time-integrating said plurality of time derivatives; and (h) producing said Rank Filtered Variable as a weighted average of said Offset Rank Filtered Variables.
 14. Method for Adaptive Analog Rank Selecting operable to transform a plurality of input variables into an output Rank Selected Variable comprising steps of: (a) forming a plurality of outputs of averaging comparators by passing said plurality of input variables and each component of a plurality of feedbacks of Offset Rank Selected Variables through a respective plurality of said averaging comparators; (b) forming a first difference which is a weighted difference of said outputs of the averaging comparators; (c) forming a Density Function by time averaging said first difference; (d) forming a second difference which is a weighted difference of said feedbacks of the Offset Rank Selected Variables; (e) forming a plurality of differences between the outputs of the averaging comparators and the respective Offset Quantile Parameters of said Offset Rank Selected Variables; (f) forming a plurality of time derivatives of said Offset Rank Selected Variables by multiplying each of said plurality of differences by a ratio of said second difference and said Density Function; (g) producing the plurality of the Offset Rank Selected Variables by time-integrating said plurality of the time derivatives; and (h) producing said Rank Selected Variable as a weighted average of said Offset Rank Selected Variables.
 15. Method for signal processing of claim 3 wherein one or more components of said Control Level Signal are linear combinations of outputs of a step of Adaptive Analog Rank Filtering of one or more components of said input signal.
 16. Method for signal processing of claim 3 wherein one or more components of said Control Level Signal are linear combinations of outputs of a step of Adaptive Analog Rank Filtering of one or more output components of a step of Multimodal Pulse Shaping of said input signal.
 17. Method for signal processing of claim 3 wherein one or more components of said Control Level Signal are linear combinations of outputs of a step of Adaptive Analog Rank Selecting of a plurality of components of said input signal.
 18. Method for signal processing of claim 3 wherein one or more components of said Control Level Signal are linear combinations of outputs of a step of Adaptive Analog Rank Selecting of a plurality of output components of a step of Multimodal Pulse Shaping of said input signal.
 19. A method for signal processing operable to transform an input signal into an output signal comprising a Threshold Domain Filtering step performing Threshold Domain Filtering and at least one additional step operable to perform a function selected from the group consisting of Multimodal Pulse Shaping, Analog Rank Filtering, and Analog Counting.
 20. A method for signal processing as recited in claim 19 wherein said Threshold Domain Filtering step is operable to extract one or more features of interest from said input signal to produce one or more output signals.
 21. A method for signal processing as recited in claim 19 wherein a threshold domain of said Threshold Domain Filtering is defined by a Control Level Signal, said Control Level Signal consisting of one or more components.
 22. A method for signal processing as recited in claim 19 wherein said Threshold Domain Filtering step outputs a first output value when said input signal is within a threshold domain of said Threshold Domain Filtering and a second output value when said input signal is outside of said threshold domain.
 23. A method for signal processing as recited in claim 19 wherein said Threshold Domain Filtering step outputs a first output value when said input signal is within a threshold domain of said Threshold Domain Filtering, a second output value when said input signal is outside of said threshold domain, and one or more values when said input signal is inside a finite interval at a boundary of said threshold domain.
 24. A method for signal processing as recited in claim 19 wherein at least one of said additional steps is operable to perform Multimodal Pulse Shaping and wherein said input signal has one or more components and wherein said Multimodal Pulse Shaping transforms at least one of said input signal components into a plurality of output signal components where at least one of said output signal components represents a derivative of another of said output signal components.
 25. A method for signal processing as recited in claim 24 wherein said derivative is a time-derivative.
 26. A method for signal processing as recited in claim 24 wherein said plurality of output signal components is representative of one or more features of interest of said input signal.
 27. A method for signal processing as recited in claim 19 wherein at least one of said additional steps is Analog Counting operable to perform an Analog Counting function and wherein said Threshold Domain Filtering step has an output with at least one component and where said Analog Counting comprises the steps of: a. time-differentiating said component to produce a time-derivative, and b. rectifying said time-derivative to produce an instantaneous count rate.
 28. A method for signal processing as recited claim 27 wherein said Analog Counting further comprises the step of time-integrating said instantaneous count rate in a moving time window to produce a count rate.
 29. A method for signal processing as recited in claim 21 wherein at least one of said additional steps is operable to perform Analog Rank Filtering and wherein said one or more components of said Control Level Signal are linear combinations of outputs of said Analog Rank Filtering.
 30. A method for signal processing as recited in claim 29 wherein said input signal has one or more components and wherein said Analog Rank Filtering is performed on one or more components of said input signal.
 31. A method for signal processing as recited in claim 21 wherein at least one of said additional steps is operable to perform Analog Rank Filtering and wherein at least one of said additional steps is operable to perform Multimodal Pulse Shaping and wherein said one or more components of said Control Level Signal are produced by applying said Analog Rank Filtering to one or more output components of said Multimodal Pulse Shaping.
 32. A method for signal processing operable to transform an input signal into an output signal comprising the steps of: a. forming a plurality of outputs of delayed comparators by passing said input signal and a plurality of feedbacks of Offset Rank Filtered Signals through a respective plurality of said delayed comparators, said Offset Rank Filtered Signals having Offset Quantile Parameters; b. forming a first difference which is a weighted difference of said outputs of the delayed comparators; c. forming a Density Function by time averaging said first difference; d. forming a second difference which is a weighted difference of said feedbacks of the Offset Rank Filtered Signals; e. forming a plurality of differences between the outputs of the delayed comparators and the respective Offset Quantile Parameters of said Offset Rank Filtered Signals; f. forming a plurality of time derivatives of said Offset Rank Filtered Signals by multiplying each of said plurality of differences by a ratio of said second difference and said Density Function; g. producing the plurality of said Offset Rank Filtered Signals by time-integrating said plurality of time derivatives; and h. producing said output signal as a weighted average of said Offset Rank Filtered Signals.
 33. A method for signal processing as recited in claim 32 wherein: a. said plurality of outputs of delayed comparators consists of two outputs and said plurality of feedbacks of Offset Rank Filtered Signals consists of two feedbacks and said plurality of said delayed comparators consists of two delayed comparators; b. said first difference is a difference of said two outputs of said two delayed comparators; c. said second difference is a difference of said two feedbacks; d. said plurality of differences consists of two differences; e. said plurality of time derivatives consists of two time derivatives; f. said plurality of the Offset Rank Filtered Signals consists of two Offset Rank Filtered Signals; and g. said weighted average of said Offset Rank Filtered Signals is an average of said two Offset Rank Filtered Signals.
 34. A method for signal processing operable to transform a plurality of input signals into an output signal comprising the steps of: a. forming a plurality of outputs of averaging comparators by passing said plurality of input signals and a plurality of feedbacks of Offset Rank Selected Signals through a plurality of said averaging comparators, said Offset Rank Selected Signals having Offset Quantile Parameters; b. forming a first difference which is a weighted difference of said outputs of the averaging comparators; c. forming a Density Function by time averaging said first difference; d. forming a second difference which is a weighted difference of said feedbacks of the Offset Rank Selected Signals; e. forming a plurality of differences between the outputs of the averaging comparators and the respective Offset Quantile Parameters of said Offset Rank Selected Signals; f. forming a plurality of time derivatives of said Offset Rank Selected Signals by multiplying each of said plurality of differences by a ratio of said second difference and said Density Function; g. producing the plurality of said Offset Rank Selected Signals by time-integrating said plurality of the time derivatives; and h. producing said output signal as a weighted average of said Offset Rank Selected Signals.
 35. A method for signal processing as recited in claim 34 wherein: a. said plurality of outputs of averaging comparators consists of two outputs and said plurality of feedbacks of Offset Rank Selected Signals consists of two feedbacks and said plurality of said averaging comparators consists of two averaging comparators; b. said first difference is a difference of said two outputs of said two averaging comparators; c. said second difference is a difference of said two feedbacks; d. said plurality of differences consists of two differences; e. said plurality of time derivatives consists of two time derivatives; f. said plurality of the Offset Rank Selected Signals consists of two Offset Rank Selected Signals; and g. said weighted average of said Offset Rank Selected Signals is an average of said two Offset Rank Selected Signals.
 36. A method for image processing operable to transform an input image signal into an output signal comprising the steps of: a. forming a plurality of outputs of delayed comparators by passing said input image signal and a plurality of feedbacks of Offset Rank Filtered Signals through a respective plurality of said delayed comparators, said Offset Rank Filtered Signals having Offset Quantile Parameters; b. forming a first difference which is a weighted difference of said outputs of the delayed comparators; c. forming a Density Function by time averaging said first difference; d. forming a second difference which is a weighted difference of said feedbacks of the Offset Rank Filtered Signals; e. forming a plurality of differences between the outputs of the delayed comparators and the respective Offset Quantile Parameters of said Offset Rank Filtered Signals; f. forming a plurality of time derivatives of said Offset Rank Filtered Signals by multiplying each of said plurality of differences by a ratio of said second difference and said Density Function; g. producing the plurality of said Offset Rank Filtered Signals by time-integrating said plurality of time derivatives; and h. producing said output signal as a weighted average of said Offset Rank Filtered Signals.
 37. A method for image processing as recited in claim 36 wherein: a. said plurality of outputs of delayed comparators consists of two outputs and said plurality of feedbacks of Offset Rank Filtered Signals consists of two feedbacks and said plurality of said delayed comparators consists of two delayed comparators; b. said first difference is a difference of said two outputs of said two delayed comparators; c. said second difference is a difference of said two feedbacks; d. said plurality of differences consists of two differences; e. said plurality of time derivatives consists of two time derivatives; f. said plurality of the Offset Rank Filtered Signals consists of two Offset Rank Filtered Signals; and g. said weighted average of said Offset Rank Filtered Signals is an average of said two Offset Rank Filtered Signals.
 38. A method for image processing operable to transform a plurality of input image signals into an output signal comprising the steps of: a. forming a plurality of outputs of averaging comparators by passing said plurality of input image signals and a plurality of feedbacks of Offset Rank Selected Signals through a plurality of said averaging comparators, said Offset Rank Selected Signals having Offset Quantile Parameters; b. forming a first difference which is a weighted difference of said outputs of the averaging comparators; c. forming a Density Function by time averaging said first difference; d. forming a second difference which is a weighted difference of said feedbacks of the Offset Rank Selected Signals; e. forming a plurality of differences between the outputs of the averaging comparators and the respective Offset Quantile Parameters of said Offset Rank Selected Signals; f. forming a plurality of time derivatives of said Offset Rank Selected Signals by multiplying each of said plurality of differences by a ratio of said second difference and said Density Function; g. producing the plurality of said Offset Rank Selected Signals by time-integrating said plurality of the time derivatives; and h. producing said output signal as a weighted average of said Offset Rank Selected Signals.
 39. A method for image processing as recited in claim 38 wherein: a. said plurality of outputs of averaging comparators consists of two outputs and said plurality of feedbacks of Offset Rank Selected Signals consists of two feedbacks and said plurality of said averaging comparators consists of two averaging comparators; b. said first difference is a difference of said two outputs of said two averaging comparators; c. said second difference is a difference of said two feedbacks; d. said plurality of differences consists of two differences; e. said plurality of time derivatives consists of two time derivatives; f. said plurality of the Offset Rank Selected Signals consists of two Offset Rank Selected Signals; and g. said weighted average of said Offset Rank Selected Signals is an average of said two Offset Rank Selected Signals.
 40. An apparatus for signal processing operable to transform an input signal into an output signal comprising a Threshold Domain Filtering module operable to perform Threshold Domain Filtering and at least one additional module operable to perform a function selected from the group consisting of Multimodal Pulse Shaping, Analog Rank Filtering, and Analog Counting.
 41. An apparatus for signal processing as recited in claim 40 wherein said Threshold Domain Filtering module is operable to extract one or more features of interest from said input signal to produce one or more output signals.
 42. An apparatus for signal processing as recited in claim 40 wherein a threshold domain of said Threshold Domain Filtering is defined by a Control Level Signal, said Control Level Signal consisting of one or more components.
 43. An apparatus for signal processing as recited in claim 40 wherein said Threshold Domain Filtering module outputs a first output value when said input signal is within a threshold domain of said Threshold Domain Filtering and a second output value when said input signal is outside of said threshold domain.
 44. An apparatus for signal processing as recited in claim 40 wherein said Threshold Domain Filtering module outputs a first output value when said input signal is within a threshold domain of said Threshold Domain Filtering, a second output value when said input signal is outside of said threshold domain, and one or more values when said input signal is inside a finite interval at a boundary of said threshold domain.
 45. An apparatus for signal processing as recited in claim 40 wherein at least one of said additional modules is a Multimodal Pulse Shaping and wherein said input signal has one or more components and wherein said Multimodal Pulse Shaping transforms at least one of said input signal components into a plurality of output signal components where at least one of said output signal components represents a derivative of another of said output signal components.
 46. An apparatus for signal processing as recited in claim 45 wherein said derivative is a time-derivative.
 47. An apparatus for signal processing as recited in claim 45 wherein said plurality of output signal components is representative of one or more features of interest of said input signal.
 48. An apparatus for signal processing as recited in claim 40 wherein at least one of said additional modules is an Analog Counting module operable to perform an Analog Counting function and wherein said Threshold Domain Filtering module has an output with at least one component and where said Analog Counting module comprises: a. a differentiator operable to time-differentiate said component to produce a time-derivative, and b. a rectifier operable to rectify said time-derivative to produce an instantaneous count rate.
 49. An apparatus for signal processing as recited claim 48 wherein said Analog Counting module further comprises an integrator operable to time-integrate said instantaneous count rate in a moving time window to produce a count rate.
 50. An apparatus for signal processing as recited in claim 42 wherein at least one of said additional modules is operable to perform Analog Rank Filtering and wherein said one or more components of said Control Level Signal are linear combinations of outputs of said Analog Rank Filtering.
 51. An apparatus for signal processing as recited in claim 50 wherein said input signal has one or more components and wherein said Analog Rank Filtering is performed on one or more components of said input signal.
 52. An apparatus for signal processing as recited in claim 42 wherein at least one of said additional modules is operable to perform Analog Rank Filtering and wherein at least one of said additional modules is operable to perform Multimodal Pulse Shaping and wherein said one or more components of said Control Level Signal are produced by applying said Analog Rank Filtering to one or more output components of said Multimodal Pulse Shaping.
 53. An apparatus for signal processing operable to transform an input signal into an output signal comprising: a. a plurality of delayed comparators operable to form a plurality of outputs by passing said input signal and a plurality of feedbacks of Offset Rank Filtered Signals through said plurality of delayed comparators, said Offset Rank Filtered Signals having Offset Quantile Parameters; b. a component operable to form a first difference which is a weighted difference of said outputs of said plurality of delayed comparators; c. a component operable to form a Density Function by time averaging said first difference; d. a component operable to form a second difference which is a weighted difference of said feedbacks of the Offset Rank Filtered Signals; e. a component operable to form a plurality of differences between the outputs of said plurality of delayed comparators and the respective Offset Quantile Parameters of said Offset Rank Filtered Signals; f. a component operable to form a plurality of time derivatives of said Offset Rank Filtered Signals by multiplying each of said plurality of differences by a ratio of said second difference and said Density Function; g. a component operable to produce the plurality of said Offset Rank Filtered Signals by time-integrating said plurality of time derivatives; and h. a component operable to produce said output signal as a weighted average of said Offset Rank Filtered Signals.
 54. An apparatus for signal processing as recited in claim 53 wherein: a. said plurality of delayed comparators consists of two delayed comparators and said plurality of outputs consists of two outputs and said plurality of feedbacks of Offset Rank Filtered Signals consists of two feedbacks; b. said first difference is a difference of said two outputs of said two delayed comparators; c. said second difference is a difference of said two feedbacks; d. said plurality of differences consists of two differences; e. said plurality of time derivatives consists of two time derivatives; f. said plurality of the Offset Rank Filtered Signals consists of two Offset Rank Filtered Signals; and g. said weighted average of said Offset Rank Filtered Signals is an average of said two Offset Rank Filtered Signals.
 55. An apparatus for signal processing operable to transform a plurality of input signals into an output signal comprising: a. a plurality of averaging comparators operable to form a plurality of outputs by passing said plurality of input signals and a plurality of feedbacks of Offset Rank Selected Signals through said plurality of averaging comparators, said Offset Rank Selected Signals having Offset Quantile Parameters; b. a component operable to form a first difference which is a weighted difference of said outputs of the averaging comparators; c. a component operable to form a Density Function by time averaging said first difference; d. a component operable to form a second difference which is a weighted difference of said feedbacks of the Offset Rank Selected Signals; e. a component operable to form a plurality of differences between the outputs of said plurality of averaging comparators and the respective Offset Quantile Parameters of said Offset Rank Selected Signals; f. a component operable to form a plurality of time derivatives of said Offset Rank Selected Signals by multiplying each of said plurality of differences by a ratio of said second difference and said Density Function; g. a component operable to produce the plurality of said Offset Rank Selected Signals by time-integrating said plurality of the time derivatives; and h. a component operable to produce said output signal as a weighted average of said Offset Rank Selected Signals.
 56. An apparatus for signal processing as recited in claim 55 wherein: a. said plurality of said averaging comparators consists of two averaging comparators and said plurality of outputs consists of two outputs and said plurality of feedbacks of Offset Rank Selected Signals consists of two feedbacks; b. said first difference is a difference of said two outputs of said two averaging comparators; c. said second difference is a difference of said two feedbacks; 